关于javascript中对象文字的解释

时间:2013-05-09 05:59:38

标签: javascript html5

为什么我们不能以与第一项相同的方式访问对象文字中的第二项。

var foo = {a:"alpha",2:"beta"};
console.log(foo.a) -> printing 'alpha' absolutely right
console.log(foo.2) -> Error: missing ) after argument list

为什么我们有两种不同的行为?

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

变量/字段名称(称为标识符)不能以Javascript中的数字开头。因此2不是有效的标识符。

答案 1 :(得分:1)

变量不能以数字

开头

如果您执行以下操作,则变量名称中可能包含无效字符:

var a={"2":33}
console.log(a["2"]);