Как действительно “Возражают ()”, и “новый Объект ()” отличается по JavaScript?

В JavaScript, между чем различие

var x = Object();

и

var x = new Object();

?

9
задан shoosh 19 February 2013 в 04:22
поделиться

1 ответ

Это извлечено непосредственно из спецификации ECMAScript :

15.2.1 Конструктор объекта, вызываемый как функция

Когда объект вызывается как функция, а не как конструктор, она выполняет преобразование типа.

15.2.1.1 Object ([value])

Когда функция Object вызывается без аргументов или с одним значением аргумента, следующие шаги: принято:

  1. Если значение равно нулю, не определено или нет поставил, создать и вернуть новый Объект объекта точно так же, как если бы стандартный встроенный объект конструктор был вызван с те же аргументы (15.2.2.1).

    Вкратце: новый объект ([значение])

  2. Вернуть ToObject (значение).

Примечания:

[] Обычный способ пометить параметр как необязательный.

ToObject Это очень простая операция, которая определена в разделе 9.9.

9
ответ дан 4 December 2019 в 21:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: