странное поведение консоли инструментов разработчика Chrome - PullRequest
1 голос
/ 22 марта 2012

Если вы наберете в консоли

> new Object() 

Пустой объект js появится в консоли и ожидается, но если вы наберете

> {}

Вы получите undefined

Странно.Не так ли?

1 Ответ

6 голосов
/ 22 марта 2012

Вызов функции с new всегда приводит к значению. Теперь ваша вторая строка,

{}

- это пустой блок кода, а не литерал объекта.

Попробуйте:

({})

или

0,{}

Консоль анализирует введенные вами строки как операторы , а не как выражения. Следовательно, открытая фигурная скобка в начале оператора является разделителем блоков, а не началом литерала объекта. Включив другие токены, чтобы заставить синтаксический анализатор анализировать выражение, вы можете начать литерал объекта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...