let a = new Array(24).fill(0).map((el,index) => index)
console.log(a)
fill()
方法用一个固定值填充一个数组中从起始索引(默认为 0)到终止索引(默认为 array.length)内的全部元素。它返回修改后的数组。fill(0)
传入一个参数则是给数组所有位置全部填充0
注意
下面这种方法是无效的
let a = new Array(24)
let s = a.map((el,index) => index)
console.log(s)
原因:
在 JavaScript
中,使用 new Array(24)
创建一个数组时,实际上会创建一个包含 24
个空位(empty items)的稀疏数组,而不是包含 24
个值的数组。这意味着数组的长度(length)为 24
,但是并没有实际的值在数组中。
在这种情况下,使用 map
方法来遍历数组时,对于稀疏数组中的空位并不会执行回调函数,因此你得到的结果是一个包含 24
个 undefined
值的数组,而不是一个包含 0
到 23
的数字的数组。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。