复制javascript数组中的每个元素的最简单方法(使用“原生”javascript)是什么?
顺序很重要。
例如:
a = [2, 3, 1, 4]
// do something with a
a
// a is now [2, 2, 3, 3, 1, 1, 4, 4]
发布于 2015-10-23 22:48:05
我想出了一些类似于tymeJV的答案。
[2, 3, 1, 4].reduce(function (res, current, index, array) {
return res.concat([current, current]);
}, []);
发布于 2015-10-23 22:49:20
基本上:
a = [2, 3, 1, 4];
b=[];
for(var i = 0; i< a.length;++i){
b.push(a[i]);
b.push(a[i]);
}
a=b;
发布于 2019-10-23 23:08:51
基本上,您可以在ES19中使用flatMap
a = [1, 2, 3, 4];
a.flatMap(i => [i,i]); // [1, 1, 2, 2, 3, 3, 4, 4]
您还可以像这样自定义重复次数:
a = [1, 2, 3, 4];
const dublicateItems = (arr, numberOfRepetitions) =>
arr.flatMap(i => Array.from({ length: numberOfRepetitions }).fill(i));
dublicateItems(a, 3);
https://stackoverflow.com/questions/33305152
复制相似问题