gpt4 book ai didi

javascript - 将数组 N 次复制到扁平数组

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:59:03 26 4
gpt4 key购买 nike

我有一个包含四个元素的数组,我想将它复制到另一个数组四次,我通过连接四次来完成。

我的努力

let demoProperties = []
.concat(fourDemoProperties)
.concat(fourDemoProperties)
.concat(fourDemoProperties)
.concat(fourDemoProperties);

我还关注了另一个way (映射和减少)但这种方式迭代两次。

复制N次有没有最简单的优化方法?您的任何建议将不胜感激。

最佳答案

你可以使用传播语法:

const demoProperties = [...fourDemoProperties, ...fourDemoProperties, ...fourDemoProperties, ...fourDemoProperties];

或者使用 Array#fill 复制数组,然后使用扩展语法和 Array#concat 得到一个新数组:

const fourDemoProperties = [1, 2, 3, 4];

const demoProperties = [].concat(...Array(4).fill(fourDemoProperties));

console.log(demoProperties);

注意:手册和 Array#fill 都是浅层克隆。如果项目是对象,您将克隆对对象的引用,如果您更改其中一个,“副本”也会更改。

示例(检查浏览器的控制台):

const fourDemoProperties = [{ a: 1 }, { b: 2 }];

const demoProperties = [...fourDemoProperties, ...fourDemoProperties, ...fourDemoProperties, ...fourDemoProperties];

demoProperties[0].a = 5000;

console.log(demoProperties);

关于javascript - 将数组 N 次复制到扁平数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45917564/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com