Page 24 - jQuery для начинающих
P. 24

Объекты

             На объекты в JavaScript возложено две роли:

                —  хранилище данных
                —  функционал объекта

             Первое предназначение можно описать следующим кодом:


                    var user = {

                           name: "Ivan",
                           age: 32
                    };

                    alert(user.name); // Ivan
                    alert(user.age);  // 32


             Это фактически реализация  key-value хранилища, или хэша, или ассоциативного массива,
             или …, ну вы поняли, названий много, но в JavaScript'е это объект, и запись выше – это JSON
             – JavaScript Object Notation (хоть и с небольшими оговорками).

             Для перебора такого хранилища можно использовать цикл for(.. in ..):


                    for (var prop in user) {

                           alert(prop + "=" + user[prop]);  // выведет name=Ivan
                                                                  // затем age=32

                    }


             С объектами, конструкторами и т.д. в JavaScript посложнее будет, хотя для понимания не
             так уж и много надо, запоминайте: любая функция вызванная с использованием ключевого
             слова «new» возвращает нам объект, а сама становится конструктором данного объекта:


                    function User(name) {

                           this.name = name;
                           this.status = USER_STATUS_ACTIVE;

                    }
                    var me = new User("Anton");


             Поведение функции User() при использовании «new» слегка изменится:

                1.  Данная конструкция создаст новый, пустой объект
                2.  Ключевое слово this получит ссылку на этот объект
                3.  Функция выполнится и возможно изменит объект через this (как в примере выше)

                                                                                                         24


                                                                                        www.trk.kg
   19   20   21   22   23   24   25   26   27   28   29