Page 94 - 6108
P. 94
person ['name'] = 'Василь'; // person.name = 'Василь'
Записи person['name'] і person.name ідентичні, але квадратні дужки
дозволяють використовувати в якості імені властивості будь-який рядок:
person [ 'улюблений стиль музики'] = 'Джаз';
Таке привласнення було б неможливо «через крапку», так як інтерпретатор
після першого пробілу подумає, що властивість закінчилося, і далі видасть
помилку:
В обох випадках, ім'я властивості має бути рядком. Якщо використано
значення іншого типу – JavaScript призведе його до рядка автоматично.
Квадратні дужки також дозволяють звернутися до властивості, ім'я якого
зберігається в змінній:
person.age = 25;
var key = 'age';
alert (person [key]); // виведе person [ 'age']
Взагалі, якщо ім'я властивості зберігається в змінної (var key = "age"),
то єдиний спосіб до нього звернутися - це квадратні дужки person[key].
Доступ через крапку використовується, якщо на етапі написання програми
вже відома назва властивості. А якщо вона буде визначена по ходу виконання,
наприклад, введено відвідувачем і записано в змінну, то єдиний вибір -
квадратні дужки.
Об'єкт можна заповнити значеннями при створенні, вказавши їх у фігурних
дужках:
Назва_обєкту = {ключ1: значення1, ключ2: значення2, ...}.
Такий синтаксис називається літеральним (англ. Literal).
var menuSetup = {
width: 300,
height: 200,
title: "Menu"
};
Назви властивостей можна перераховувати як в лапках, так і без, якщо
вони задовольняють обмеженням для імен змінних.
var menuSetup = {
width: 300,
'Height': 200,
"Завжди показувати": true
};
Як значення можна тут же вказати й інший об'єкт:
var user = {
name: "Микола",
age: 25,
address: {
city: "Івано-Франківськ",
street: "Довга",
house: 90
}
}