Когда я печатаю простые объекты в Chrome JavaScript Console, я получаю следующий вывод:
>true
true
>1/3
0.3333333333333333
и т. Д.
Но при вводе объектов возникает синтаксическая ошибка:
>{ a: 1, b: 2 }
SyntaxError: Unexpected token :
arguments: Array[1]
0: ":"
length: 1
__proto__: Array[0]
get message: function getter() { [native code] }
get stack: function getter() { [native code] }
set message: function setter() { [native code] }
set stack: function setter() { [native code] }
type: "unexpected_token"
__proto__: Error
Хотя я точно знаю, что это выражение можно было бы правильно использовать при инициализации объекта, потому что:
>obj = { a: 1, b: 2 }
Object
a: 1
b: 2
__proto__: Object
Может быть, это глупый вопрос, но я действительно хочу знать причину, почему это происходит?