4

可能重复:
Javascript 数组是否稀疏?

JavaScript中的以下“安全”吗?(如,可以预期在所有 JavaScript 引擎上可靠地工作)

a = [];
a[100] = "hello";

a[100] == "hello"; // should be true
4

3 回答 3

6

是的。JavaScript 中的数组是稀疏的,您的代码应该适用于所有 JavaScript 实现。

您可以在规范 (PDF)的第 15.4 节中了解要求。

简短摘要:数组是特殊对象,当在具有数字名称的属性处添加元素时(如 `a[123]="test"),它的长度属性会调整。其他方法(如 join)在操作期间会考虑长度。

于 2012-07-06T04:43:03.823 回答
0

是的,为什么它不起作用?它完全可以接受的语法。

于 2012-07-06T04:43:39.343 回答
0

你甚至可以假设

a[100] === "hello"; // will return true
于 2012-07-06T04:44:45.353 回答