Объекты
Объекты
Создание объектов:
- Литерал объектов
- new Object()
- Object.create()
Defiinitions and basic:
- Имя свойства
- Значение свойства
- Объект базового языка
- Объект среды выполнения
- Пользовательский объект
- Собственное свойство
- Унаследованное свойство
Получение и изменение свойств:
- форма записи, с использованием точки и идентификатора
- форма записи, с использованием квадратных скобок и строки
Перечисляемые и неперечисляемые свойства
Объекты как ассоциативные массивы
Проверка существования свойств объекта:
- оператор
in
hasOwnProperty()
propertyIsEnumerable()
- проверка на неравенство значению
undefined
Перечисление свойств объекта:
for / in
Object.keys()
Object.getOwnPropertyNames()
Пример перебора собственный свойст объекта с помощью for..in (доделать)
Дескрипторы ( или атрибуты свойства объекта ):
writable
configurable
enumerable
getter и setter
Object.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]]