gpt4 book ai didi

javascript 数组不确定属性 array[index] = true/false

转载 作者:行者123 更新时间:2023-12-02 17:54:31 28 4
gpt4 key购买 nike

我遇到了这个,理解了它,但仍然不知道它是什么 JavaScript 属性:

var array = [];

array[1] = true;

array[5] = true;

console.log(array) #=> [true, true]

array[0] #=> undefined

array[1] #=> true

array[2] #=> undefined

array[5] #=> true

有人可以帮我解释一下吗?谢谢

最佳答案

JavaScript 中的标准数组 aren't really arrays at all ,其影响之一是它们本质上是 sparse 。也就是说,数组中可以有空槽。

这就是您在那里创建的内容。在前三行之后,您将得到一个数组,其中包含两个条目(索引为 1 和 5),以及一堆完全空的槽(索引 0、2、3、4)。它的 length 属性将为 6。当您尝试从数组中检索不存在的元素时,您将得到值undefined。 (这只是 JavaScript 一般行为的一个特定情况:如果您尝试检索不存在的对象属性,您将得到值 undefined。)

具有稀疏数组的 console.log 的输出将根据 console.log 的实现对它们执行的操作而有所不同。对这个问题的评论表明控制台可以通过多种不同的方式显示数组。您可能会考虑使用console.log(array.join())来获得更一致的结果。这会给你 ,true,,,,true ,因为它显示不存在的数组条目的空白(或者包含值 undefined ,但在你的情况下,它们不存在)。

关于javascript 数组不确定属性 array[index] = true/false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21089283/

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