Объекту почтового ящика нужны данные двух типов: сведения ке и сведения о сообщении. Сведения о папке возвращаются в виде строки JSON, которая затем преобразуется в объект, щий информацию о заданной папке. Типичный объект с инфо о папке выглядит так:Этот объект сохраняется в свойстве info почтового ящика, благодаря чему может использоваться всеми методами. Для получения этой ин¬формации вызывается метод loadlnfoO. Поскольку входные данные могут быть представлены в виде объекта или в виде строки JSON, дан¬ный метод сначала должен проверить тип аргумента:
loadlnfo: function (vlnfo) {
if (typeof vlnfo == "string") {
this.info = JSON.parse(vInfo); } else {
this.info = vlnfo;
Если vlnfo - это строка, то она преобразуется в объект с помощью JS0N. parse(), в противном случае это уже объект и потому может быть при¬своен свойству info напрямую. Этот объект задействуется всякий раз, когда отображается страница со списком сообщений, но он содержит некоторые данные, необходимые для отображения отдельного сообще¬ния.
Одиночное сообщение в виде объекта JSON имеет примерно такой фор¬мат:
"date":"0KT 29, 2005 05:15", "hasAttachments":false, "unread":true,
"message":"Я думал, эти выходные пройдут лучше.
"attachments":[],.
"unreadCount":
А как у вас?
Во время просмотра этого сообщения в приложении AjaxMail, информация будет записана в свойство message, и поэтому ов доступна из всех методов. Метод loadMessageO принимает в аргумента либо объект, либо строку в формате JSON, содеря формацию о сообщении, и записывает ее в свойство message:
loadMessage: function (vMessage) {
if (typeof vMessage == "string") {-''--
this.message = JSON.parse(vMessage); } else {
this.message = vMessage;
Несложно заметить, что данный метод по сути повторяет метящ Info(), только обрабатывает другие данные. Эти два метода важны для приложения, потому что они выполняют первг ботку данных, поступающих с сервера.