Руководство описывает доступ к свойствам объектов JavaScript, добавление новых, изменение существующих и удаление свойств.
Доступ к свойствам объектов
Создадим переменную myCity с помощью const, что делает её значение неизменяемым. myCity — объект с тремя парами «имя-значение». Имена — свойства, значения — данные любого типа JavaScript (строка, число, булево значение, undefined, символ или объект).
Для доступа к свойству используется точечная нотация. Например:
const myCity = {
city: "New York",
popular: true
};
console.log(myCity.city); // Выведет "New York"
console.log(myCity.popular); // Выведет true
После точки следует имя свойства без кавычек.
Изменение свойств объектов
Изменение значения осуществляется с помощью точечной нотации:
myCity.city = "Las Vegas";
console.log(myCity.city); // Выведет "Las Vegas"
Добавление свойств объектов
Новые свойства добавляются с помощью точечной нотации:
myCity.country = "USA";
console.log(myCity); // Выведет { city: "Las Vegas", popular: true, country: "USA" }
Удаление свойств объектов
Для удаления используется ключевое слово delete:
delete myCity.country;
console.log(myCity); // Выведет { city: "Las Vegas", popular: true }
delete — оператор, за которым следует имя удаляемого свойства.
Квадратная нотация
Помимо точечной, существует квадратная нотация. Она позволяет использовать переменные в качестве имён свойств:
myCity["popular"] = false; // Изменение существующего свойства
console.log(myCity);
let countryPropertyName = "country";
myCity[countryPropertyName] = "USA"; // Добавление нового свойства
console.log(myCity);
В квадратных скобках — строка, представляющая имя свойства. Квадратная нотация удобна, когда имя свойства хранится в переменной. Точечная нотация предпочтительнее, если имя известно заранее.
Вложенные объекты
Если свойство — объект (вложенный объект), доступ к его свойствам осуществляется с помощью нескольких точек или квадратных скобок:
const myCity = {
city: "New York",
info: {
popular: true,
country: "USA"
}
};
console.log(myCity.info.popular); // Выведет true
delete myCity.info["popular"];
console.log(myCity);
Глубина вложенности может быть произвольной.
Руководство рассмотрело основные методы работы со свойствами объектов JavaScript: доступ, изменение, добавление и удаление. Точечная нотация обычно предпочтительнее, но квадратная необходима, когда имя свойства определяется динамически. Методы работы с вложенными объектами аналогичны.