1

如果我想使用括号表示法创建一个长度为 3 的数组,我应该写:var foo = [,,];

我更习惯于写:var foo = new Array(3);

我注意到,如果我删除了一个,,我的代码仍然可以工作,这令人惊讶,因为我在分配它们之后访问了所有 3 个元素。它怎么还能工作?

4

1 回答 1

2

如果你这样做

a = []
a[3] = 100

undefined索引 0,1,2 将为u填充。在使用某些索引之前,您不必设置特定的数组长度。数组会随着你的使用而增长。

所有这些都是一样的:

a = [,,,]

b = []
b.length = 3

c = new Array(3)

d = []
d[2] = undefined
于 2013-08-24T08:48:57.217 回答