Каково поведение при вводе {a: 1} с 1 и {a: 1, b: 2} с ошибкой в ​​консоли Javascript?

В Firebug, jsconsole.com или в другой интерактивной консоли Javascript будет отображаться следующее:

>>> foo = { a : 1, b : 2.2 }
Object { a=1, more...}

>>> foo.a
1

>>> foo.b
2.2

>>> { a : 1, b : 2.2 }
SyntaxError: invalid label { message="invalid label", more...}

>>> { a : 1 }
1

почему возвращается 1 для {a: 1} и почему {a: 1, b: 2.2} выдает ошибку? В Ruby они вернутся в том виде, в каком вы его определили.

15
задан nopole 17 September 2010 в 00:20
поделиться