可能是重复的问题:
JavaScript数组是否稀疏?
在JavaScript中,以下操作“安全”吗?(也就是说,在所有JavaScript引擎上都可以可靠地工作)
a = [];
a[100] = "hello";
a[100] == "hello"; // should be true
可能是重复的问题:
JavaScript数组是否稀疏?
在JavaScript中,以下操作“安全”吗?(也就是说,在所有JavaScript引擎上都可以可靠地工作)
a = [];
a[100] = "hello";
a[100] == "hello"; // should be true
是的。JavaScript中的数组是稀疏的,您的代码应该在所有JavaScript实现中正常工作。
您可以在规范(PDF)的第15.4节中了解要求。
简要概述:数组是一种特殊的对象,当向具有数字名称(例如`a[123] =“test”)的属性添加元素时,其长度属性会调整。其他方法如join在操作期间考虑长度。
是的,为什么不行呢?这是完全可接受的语法。
你甚至可以假设
a[100] === "hello"; // will return true
.length
,请改用对象:var a = {};
- Ry-