gpt4 book ai didi

javascript - 返回长度为 5 的空白数组

转载 作者:行者123 更新时间:2023-12-02 14:34:05 26 4
gpt4 key购买 nike

我一直在观看 Mark Zamoyta 的 PluralSight 快速 JavaScript 培训,并且发现了这一点。他展示了这两个例子。我一直试图理解它,但仍然无法理解。

使用new Array()方法创建数组后,如何捕获条目的长度,看到它返回一个空白数组[]。如果像这样的空白[],它不应该返回-1吗?

  var entries = [1,2,3,4,5];
entries.length
=> 5
entries
=> [ 1, 2, 3, 4, 5 ]

var entries = new Array(5);
entries.length
=> 5
entries
=> []

最佳答案

var myArray = new Array(5);

当您通过向构造函数传递一个整数(如上所示)来定义数组时,将为数组中的 5 个槽分配内存。如果你检查这个数组,你会发现:

console.log(myArray[1]);
=> undefined
console.log(myArray.toString);
=> ,,,,

如您所见,数组中确实有五个元素,每个元素都未定义。所以你的数组不是“空白”。

以这种方式初始化数组可能是不好的做法,因为它没有一个好的用例。推送到数组将产生:

myArray.push("value");
console.log(myArray.toString);
=> ,,,,,value

...这绝不是您想要的。我建议像下面这样初始化数组,并忘记将整数传递给构造函数甚至是一个选项:

var myArray = [];

关于javascript - 返回长度为 5 的空白数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37601259/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com