用 `undefined` 填充稀疏数组

时间:2021-05-31 14:06:35

标签: javascript arrays

如何用值(例如 undefined)填充稀疏数组的空槽?

let array = ['a',,,,'z']

// Should return
['a', undefined, undefined, undefined, 'z']

2 个答案:

答案 0 :(得分:3)

这将填满它:

let array = ['a',,,,'z'];
Array.from(array);  
// Returns ['a', undefined, undefined, undefined, 'z']

答案 1 :(得分:1)

你可以展开数组,你会在之前的空槽中得到 undefined

let array = ['a',,,,'z']
const result = [...array];
console.log(result);
// ['a', undefined, undefined, undefined, 'z']

for(let i = 0; i < array.length; i++) {
  test("array ", array, i);
  test("result", result, i);
}

function test(name, arr, num) {
  console.log(`${num} in ${name}: ${num in arr}`);
}
.as-console-wrapper {
    max-height: 100% !important;
}