JavaScript如何将数组全部元素复制追加,生成元素重复的目标数组
数组元素复制追加实现方案
方案1:生成新数组后赋值
两种常用写法均可实现:
- 调用数组
concat方法
let array1 = [{title: "test1"}, {title: "Test2"}, {title: "test3"}]; array1 = array1.concat(array1);
- 使用ES6扩展运算符
let array1 = [{title: "test1"}, {title: "Test2"}, {title: "test3"}]; array1 = [...array1, ...array1];
方案2:直接修改原数组(无需重新赋值)
调用push方法传入展开的原数组即可:
let array1 = [{title: "test1"}, {title: "Test2"}, {title: "test3"}]; array1.push(...array1);
注意:以上实现均为浅拷贝逻辑,数组内的引用类型元素(如示例中的对象)仅会复制引用地址,修改新数组中的对象属性会同步影响原数组的对应元素。如果需要完全独立的深拷贝效果,可搭配原生
structuredClone方法处理:array1 = [...array1, ...structuredClone(array1)];
内容的提问来源于stack exchange,提问作者Endrit Shabani
相关产品推荐
相关产品推荐

