Объекты JavaScript похожи на объекты реальной жизни: у них есть свойства и способности. В этом смысле объект JavaScript представляет собой набор именованных свойств и методов ─ функцию.
Объект может храниться в переменной, а доступ к свойствам и методам осуществляется с использованием точечного синтаксиса.
У человека, например, есть имя и возраст, и он может говорить, двигаться или изучать JavaScript. Имя и возраст являются свойствами человека и, по сути, являются фрагментами данных. Разговор, перемещение и обучение больше похожи на функции ─ здесь задействовано некоторое сложное поведение. Когда объект JavaScript обладает такой способностью, это называется методом.
Переменные могут содержать объекты, и создание объекта выполняется с использованием специального синтаксиса, обозначаемого фигурными скобками:
var jedi = { name: "Yoda", age: 899, talk: function () { alert("another... Sky... walk..."); } };
Джедаи name и age являются свойствами ─ по сути, они являются переменными внутри объекта и могут хранить все, что может переменная. talk ─ это свойство, которое содержит функцию ─ метод.
Вы можете получить данные обратно из объекта, используя точечный синтаксис:
jedi.name; Yoda
jedi.age; 899
jedi.talk(); //produces an alert box
Вы также можете переназначить свойства объекта:
jedi.name = "Mace Windu";
И добавлять новые на лету:
jedi.lightsaber = "purple";
Свойствами могут быть любые данные, включая объекты и массивы. Добавление объекта в качестве свойства другого объекта создаёт вложенный объект:
var person = { age: 122 }; person.name = { first: "Jeanne", last: "Calment" };
Создание пустого объекта и добавление к нему свойств и методов также возможно:
var dog = {}; dog.bark = function () { alert("Woof!"); };
Страницы в тему: