稀疏数组与稠密数组
# 稀疏数组 与 稠密数组
稀疏数组
也就是数组的长度和数组的个数不匹配,在 JS 中进行遍历时,并不会遍历对应的元素
var a = new Array(3);
// a 在遍历时,并不会打印任何值,此时为稀疏数组
a.forEach(function (x, i) { console.log(i+". "+x) })
var b = new Array(3).fill(undefined)
b.forEach(function (x, i) { console.log(i+". "+x) }) // 0. undefined ; 1. undefined; 2. undefined;
1
2
3
4
5
6
2
3
4
5
6
区别在于遍历时,稀疏数组会跳过不存在的元素,但是稠密数组可以打印出来,虽然都为 undefined
# 快速创建自增数组
[...Array(1000).keys()] // [0,1,2,3,4,...,999]
1
JavaScript: sparse arrays vs. dense arrays (opens new window)
编辑 (opens new window)
上次更新: 2021/03/23 14:59:38