如何在一个简洁的单行初始化语句中用 n 个不同的空数组填充一个新数组?
How do I fill a new array with n distinct empty arrays, in a concise one-line initialization statement?
这是我卡住的地方。我想采用此语句并以我填充的空数组(我推测可能不适用于动态值)的方式修改它,将桶初始化为 n 个不同的空数组。
我该怎么做?有没有办法让这个填充方法以预期的方式运行?
let radix = 10;
let badBucket = [...Array(radix).fill([])];
let goodBucket = JSON.parse(JSON.stringify([...Array(radix).fill([])]));
badBucket[3].push(33);
goodBucket[3].push(33);
console.log(JSON.stringify(badBucket));
console.log(JSON.stringify(goodBucket));
尝试:
let radix = 10;
let bucket = [...Array(radix)].map(e=>[])
bucket[0].push(1)
console.log(JSON.stringify(bucket));
您可以使用Array.from
的回调函数。
let length = 5;
let res = Array.from({length}, _=>[]);
console.log(res);
这是我卡住的地方。我想采用此语句并以我填充的空数组(我推测可能不适用于动态值)的方式修改它,将桶初始化为 n 个不同的空数组。
我该怎么做?有没有办法让这个填充方法以预期的方式运行?
let radix = 10;
let badBucket = [...Array(radix).fill([])];
let goodBucket = JSON.parse(JSON.stringify([...Array(radix).fill([])]));
badBucket[3].push(33);
goodBucket[3].push(33);
console.log(JSON.stringify(badBucket));
console.log(JSON.stringify(goodBucket));
尝试:
let radix = 10;
let bucket = [...Array(radix)].map(e=>[])
bucket[0].push(1)
console.log(JSON.stringify(bucket));
您可以使用Array.from
的回调函数。
let length = 5;
let res = Array.from({length}, _=>[]);
console.log(res);