因此,我试图复制数组元素,例如:
var array = ["chicken","nugget","good"];
进入:
var array2 = ["chicken","chicken","nugget","nugget","good","good"];
如何处理?
惯用的方式是:
["chicken","nugget","good"].flatMap((x) => [x, x]);
[请注意,并非所有的javascript环境都提供flatMap
,因此可能需要进行翻译。
您可以尝试以下方法:
const arr = ["chicken","nugget","good"].reduce(function (res, current, index, array) {
return res.concat([current, current]);
}, []);
一种方法是使用forEach()遍历数组并将每个项目两次插入到新数组中。
var array = ["chicken","nugget","good"];
let array2 = [];
array.forEach(item => {
array2.push(item, item);
});
console.log(array2);
NOTE:如果数组项是对象,则通过此方法复制相同的对象参考。在这种情况下,您可能想要先克隆对象插入。
您可以只使用纯Javascript,Node.js不需要任何特殊。
var array = ["chicken","nugget","good"];
var array2 = ["good"];
var concatenated = array.concat(array2);