В этой статье мы с вами продолжим знакомиться с наиболее сложным, но и не менее интересным типом данных в JavaScript — речь идет об объектах. Приступим?
Напомню, в предыдущей части мы узнали, как добавлять данные в объект — свойства объекта, а также как получать эти данные. А что если мы хотим удалить некое свойство из объекта? Сделать это можно, использовав команду delete:
1.var names = {2.name1: 'John',3.name2: 'Jane'4.};5.console.log(names);6.delete names.name1;7.console.log(names);
Идем дальше. Объекты удобны тем, что в них можно не просто хранить свойства с одним значением, а даже целые объекты, т.е. получается некая древовидная структура хранения данных:
01.var names = {02.name1: 'John',03.nameObj: {04.val1: 'Name 1',05.val2: 'Name 2'06.},07.name2: 'Jane',08.};09.console.log(names);Как в этом случае получить доступ к свойствам вложенного объекта? Очень просто: через точку мы обратимся к объекту-свойству nameObj, а затем через еще одну точку уже к его свойствам:
1.console.log(names.name1);2.console.log(names.name2);3.console.log(names.nameObj.val2);4.console.log(names.nameObj.val1);
Ну и, наконец, что особенно приятно, в объектах мы можем хранить и собственные функции. Функции эти принято называть методами объектами. Давайте попробуем добавить метод, который будет принимать некий параметр и выводить его в консоль:
1.var names = {2.name1: 'John',3.name2: 'Jane',4.hi: function(param){5.console.log(param);6.}7.};8.names.hi(names.name2);В результате в консоль будет выведен переданный параметр, в примере выше это переданное параметром свойство объекта. Удобная штука эти объекты, не правда ли? Теперь мы можем хранить в объектах не только свойства, но и методы.
Источник: http://webformyself.com/obekty-v-javascript-chast-3/
