Объекты javascript, как записать, синтаксис, как использовать объект
Чтобы создать объект без свойств:
var obj = {};
Создать объект со свойствами:
var obj = {a:1, b:2, c:'three'};
Запятую после последнего свойства лучше не ставить.
Добавить новое свойство:
obj.d = 4;
Удалить свойство в объекте:
delete obj.b;
При обращении к несуществующему свойству результат будет undefined
Переменная хранит не сам объект, а ссылку на объект, в отличии от обычных переменных, которые хранят свои значения внутри переменной.
При вызове функции и передачи ей объекта передается не сам объект, а ссылка на него:
var fido = {a:1, b:1};
function test (inet){ ..code.. }
test (fido);
Здесь в переменную параметра inet помещается КОПИЯ ссылки на объект fido.
Внутри функции test мы обращаемся к объекту так: inet.a или inet.b
Все изменения свойств переменной параметра внутри функции отражаются на самом объекте.
Методы - это функция в объекте:
var obj = {
aa:1,
bb: function(){ var aa = 2; },
bb1: function(){ this.aa = 2; },
cc: function() { if (this.aa ==2) alert ("ok");}
};
при вызове метода obj.сс(); мы получим ошибку, так как aa не определена.
если мы вызовем obj.bb(); а затем obj.сс(); снова будет ошибка, так как в методе bb мы определяем локальную переменную.Если убрать var то она станет глобальной и ошибка исчезет. Но правильно делать через this, запустить obj.bb1(); а затем obj.сс();
Как перебрать все свойства и их значения в объекте?
for (var prop in obj) { console.log (prop + " " + obj[prop]};
также к свойству можно обратиться obj.color или obj["color"] или obj["co"+"lor"]
Как передать значение в метод?
var obj = {
aa: function(amount) { this.xx = amount + 2);}
};
obj.aa(4); // вызываем метод и передаем 4
Оставить свой ответ: