4 回答
TA贡献1845条经验 获得超8个赞
您可以采用单独的索引并分配值。
const func = (a, n) => {
let array = [],
i = 0;
while (n--) for (const v of a) array[i++] = v;
return array;
};
console.log(...func([1, 2, 3, 4], 2));
TA贡献1813条经验 获得超2个赞
您可以使用扩展运算符为循环的每次迭代创建一个新数组。这意味着您的arr变量不能是常量,因为它会被新数组覆盖。
const func = (a, n) => {
let arr = [];
for (let i = 0; i < n; i++) {
arr = [...arr, ...a];
}
console.log(arr);
};
func([1, 2, 3, 4], 2);
TA贡献1873条经验 获得超9个赞
好吧,您可以使用两个循环并直接分配i数组项。
const func = (a, n) => {
const arr = [];
for (let i = 0; i < n; i++) {
for (let j = 0; j < a.length; j++) {
arr[i * a.length + j] = a[j]
}
}
console.log(arr);
};
func([1, 2, 3, 4], 2);
TA贡献1893条经验 获得超10个赞
那 ?
const func=(a, n)=>
{
const arr = []
let p = 0
for (let i=0;i<n;++i) for(let v of a) arr[p++] = v
console.log(JSON.stringify(arr));
}
func([1, 2, 3, 4], 2);
添加回答
举报