Найти в Дзене
stas-webdev

Объекты в JavaScript

Оглавление

Объект в JavaScript - это коллекция пар ключ-значение. Каждая пара ключ-значение называется свойством. Свойство может быть функцией, массивом, самим объектом или любым примитивным типом данных, т. е. целым числом, строкой и т. д. Функции в объекте называются методами.

Пример:

Здесь firstName, lastName и fullName являются свойствами одного и того же объекта, т.е. человека. firstName - это ключ, а Virat - значение свойства.

Получить доступ к свойствам объекта можно с помощью двух выражений:

Точечная запись:

Новые свойства могут быть добавлены с использованием точечной нотации, как показано ниже:

Запись с квадратными скобками:

Новые свойства могут быть добавлены с использованием квадратных скобок, как показано ниже:

Свойства также могут быть доступны с помощью переменной, значение которой равно имени свойства, как показано ниже:

Примечание. Вышеописанный метод использования переменной для доступа к именам свойств нельзя использовать для доступа к свойствам объекта с использованием точечной нотации.

Имя свойства может быть любой допустимой JS-строкой или чем угодно, что может быть преобразовано в строку (включая пустую строку). Однако, если имя свойства не является допустимым идентификатором JavaScript (например, содержит пробел или дефис или начинается с числа), то оно может быть доступно и добавлено к объекту только с использованием записи в квадратных скобках

Удаление свойства из объекта

Чтобы удалить свойство из объекта, мы можем использовать оператор delete. Вы не можете удалять свойства, которые были унаследованы, а также нельзя удалять свойства, в атрибуте configurable которых, явно указано обратное.

Оператор delete возвращает true, если удаление прошло успешно. Он также возвращает true, если удаляемое свойство не существует или свойство не может быть удалено.

Давайте посмотрим, что произойдет, если мы попытаемся вызвать метод fullName, который использует свойства firstName (которое мы только что удалили) и lastName объекта human.

Выведет undefined, потому что мы пытались получить доступ к свойству firstName, которого не существует.

Спасибо за прочтение!

В этой статье мы познакомились с доступом к свойствам объекта в JavaScript. В следующей части мы увидим различные способы создания объектов в JS.