javascript - 为什么点运算符无法访问数组元素?

标签 javascript

这个问题是关于 JavaScript 语言基础知识的。为什么我们可以使用点( . )运算符来访问对象的元素,但不能使用数组元素?

换句话说,为什么 myArray.0在 JavaScript 中无效?

最佳答案

使用点表示法访问的 JavaScript 属性名称不能以数字开头。这只是 javascript 语法规则/语法的一部分。因此,即使点表示法适用于数组,它也不会起作用,因为数组索引是数字,并且以数字开头的属性名称无法使用点表示法访问。

对于数组,你显然可以使用:

myArray[0]

但是,这也适用于以数字开头的对象属性,例如:

var x = {"12": "foo"};
alert(x["12"]);     // foo

而且,你不能这样做:

alert(x.12)

即使x是一个对象并且“12”是该对象的合法属性。您必须使用 x["12"] 才能访问它。

关于javascript - 为什么点运算符无法访问数组元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10671481/

相关文章:

javascript 一个用于ajax请求的函数

javascript - 提交后如何清除表单

javascript - Django - 使用 javascript 显示结果(错误)

javascript - 使用 jquery 删除禁用属性后,输入字段为只读

javascript - AJAX/JS语法与数组一起传递,语法错误

javascript - 将 javascript 闭包组合在一起

javascript - React 中动态创建的元素 - 如何进行控制?

javascript - 为样式组件创建响应式 Prop

javascript - 在按钮 jquery 中更改和改回文本

javascript - 如何在更改文件后重新加载 nodejs 应用程序?