Объекты
Объекты
Создание объектов:
- Литерал объектов
- new Object()
- Object.create()
Defiinitions and basic:
- Имя свойства
- Значение свойства
- Объект базового языка
- Объект среды выполнения
- Пользовательский объект
- Собственное свойство
- Унаследованное свойство
Получение и изменение свойств:
- форма записи, с использованием точки и идентификатора
- форма записи, с использованием квадратных скобок и строки
Перечисляемые и неперечисляемые свойства
Объекты как ассоциативные массивы
Проверка существования свойств объекта:
- оператор
in hasOwnProperty()propertyIsEnumerable()- проверка на неравенство значению
undefined
Перечисление свойств объекта:
for / inObject.keys()Object.getOwnPropertyNames()
Пример перебора собственный свойст объекта с помощью for..in (доделать)
Дескрипторы ( или атрибуты свойства объекта ):
writableconfigurableenumerablegetter и setterObject.getOwnPropertyDescriptor()Object.defineProperty()Object.defineProperties()
Атрибуты объекта:
prototype+ методыObject.getPrototypeOf() и isPrototypeOf()class+ функцияclassof()extensible+ методObject.isExtensible(o)
Иммутабельность объектов:
- Свойство-константа
Object.preventExtensions()Object.seal()+Object.isSealed()Object.freeze()+Object.isFrozen()
Методы класса Object:
toString()иtoLocaleString()valueOf()toJSON()
Сериализация объектов
JSON:
JSON.parse()JSON.stringify()
Сравнение объектов
Клонирование объектов (независимая копия):
Object.assign()JSON.parse() + JSON.stringify()- Итерация
Встроенные объекты
[[Get]]
[[Put]]