使用带点符号的整数键来访问javascript对象中的属性

mal*_*din 1 javascript object

为什么我们不能在点表达式中使用整数键来访问属性值?

var obj = {1: 'one', two: '2'}
console.log(obj.1) // error
console.log(obj.two)
Run Code Online (Sandbox Code Playgroud)

Aru*_*hny 5

如果点表示法访问值,则属性键必须是有效的标识符

在此代码中,属性必须是有效的JavaScript标识符,即一系列字母数字字符,也包括下划线("_")和美元符号("$"),它们不能以数字开头.例如,object.$ 1有效,而object.1则无效.

在这种情况下,您可以使用括号表示法

obj['1']
Run Code Online (Sandbox Code Playgroud)

规格:属性访问者