我被教导说,在JavaScript中,如果我定义了一个数组的大小,我也应该填充它。为什么会这样呢?几年前我读过一篇博客文章,介绍了一系列打破空数组大小的具体步骤,但我今天找不到它。
// bad Array(100) // good Array(100).fill(0)
3xiyfsfu1#
在JavaScript中,当您使用“Array()”定义一个给定大小的数组而不填充它时,会为该数组分配内存,但数组中的元素没有初始值。这意味着数组为一定数量的元素保留了内存空间,但这些元素没有被分配任何特定的值。例如,当您编写“Array(100)”时,JavaScript会为可能的未来值预留内存,但在您显式地为数组元素赋值之前,这些内存一直未使用。所以数组中的每个元素都消耗内存,即使没有给它分配有意义的值。
1条答案
按热度按时间3xiyfsfu1#
在JavaScript中,当您使用“Array()”定义一个给定大小的数组而不填充它时,会为该数组分配内存,但数组中的元素没有初始值。这意味着数组为一定数量的元素保留了内存空间,但这些元素没有被分配任何特定的值。例如,当您编写“Array(100)”时,JavaScript会为可能的未来值预留内存,但在您显式地为数组元素赋值之前,这些内存一直未使用。
所以数组中的每个元素都消耗内存,即使没有给它分配有意义的值。