Sparse Array
📌 宽松数组(Sparse Array)是什么?
Sparse Array)是什么?// 例子1:宽松数组
const sparseArray = [1, , 3]; // 中间有一个空的元素
console.log(sparseArray.length); // 输出 3
console.log(Object.keys(sparseArray)); // 输出 ["0", "2"]
// 例子2:非宽松数组
const denseArray = [1, 2, 3];
console.log(denseArray.length); // 输出 3
console.log(Object.keys(denseArray)); // 输出 ["0", "1", "2"]
✅ 判断数组是否为宽松数组的方法
1️⃣ 方法 1:通过 Object.keys() 判断实际键的数量
Object.keys() 判断实际键的数量function isSparseArray(arr) {
if (!Array.isArray(arr)) return false;
return Object.keys(arr).length < arr.length;
}
console.log(isSparseArray([1, , 3])); // true
console.log(isSparseArray([1, 2, 3])); // false2️⃣ 方法 2:用 for...in 遍历数组
for...in 遍历数组3️⃣ 方法 3:用 hasOwnProperty 判断未定义的索引
hasOwnProperty 判断未定义的索引🧪 推荐方法:
最后更新于