01. Object Creation
Объекты можно создавать:
Через литерал объектов
{}
,При помощи функции
Object.create(prototype)
.При помощи функции-конструктора
new Object()
,
Три способа создать пустой объект в JS:
Object Literal Syntax
В фигурных скобках перечисляется объект и его синтаксис.
Можно дублировать свойства имен, при этом свойство с новым именем перезапишет свойство со старым именем.
Notation in ES5
Notation in ES6+
When evaluating the property name from an expression, place the code into square brackets {[expression]: value}
. The expression evaluation result becomes the property name.
We can evaluate function name:
Expression can be used to evaluate property names:
Object.create()
Object.create()
Метод Object.create(proto, ?propertiesObject)
создаёт новый объект с указанными объектом прототипа и свойствами.
Object.fromEntries()
Object.fromEntries()
Создает новый объект из массива entries. Противоположность Object.entries
.
Object.fromEntries()
is flexible: It accepts iterables (which includes Arrays and is consistent with new Map()
etc.). Its [key,value] pairs are only required to be objects that have properties with the keys '0'
and '1'
(which includes 2-element Arrays).
Object()
constructor
Object()
constructorКонструктор Object
создаёт объект-обёртку для переданного значения. Если значением является null
или undefined
, создаёт и возвращает пустой объект, в противном случае возвращает объект такого типа, который соответствует переданному значению. Если значение уже является объектом, конструктор вернёт это значение. При вызове как не конструктор, Object
ведёт себя идентично коду new Object()
.
Преобразование в объект выполняется функцией Object()
:
Object()
без параметров возвращает{}
Object(undefined)
илиObject(null)
возвращает{}
Object(bool) => new Boolean(bool)
Object(num) => new Number(num)
Object(str) => new Boolean(String)
Object(obj) => obj
Last updated
Was this helpful?