javascript - 在javascript中创建数组的多个副本

标签 javascript arrays

我想创建一个数组的多个副本,副本最多只能有5个。我一直在尝试这样做。

let numbers = [1, 2, 3];
let numbersCopy = [];

for (i = 0; i < 5; i++) {  
  numbersCopy[i] = numbers;
}

console.log(numbersCopy);

但是我得到了循环对象引用。我该如何解决这个问题?

最佳答案

这听起来像:“我想要一个新数组,它最多复制旧数组的前五个元素”。对应的函数是 slice()

const oldArray = [0,1,2,3,4,5,6];
const newArray = oldArray.slice(0,5); // [0,1,2,3,4]

您可以使用切片以这些方式创建副本:

  1. oldArray.slice() = [0, 1, 2, 3, 4, 5] = 制作副本,相同的 a =[...oldArray]
  2. oldArray.slice(-2) = [5,6] = 数组的最后两项。
  3. oldArray.slice(0,5) = [0, 1, 2, 3, 4] = 前五项
  4. oldArray.slice(5) = 取前五个之后的其余部分 = [5,6]
  5. oldArray.slice(2,3) = 取项目 2 和 3 = [2,3]

继续破解 JavaScript!

关于javascript - 在javascript中创建数组的多个副本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56352266/

相关文章:

javascript - Ajax.Begin 正在使用 MVC 5 重新提交整个页面

c# - CLR 中一维和二维数组的最大大小

ios - 如何在空数组中打印数据

javascript - 为什么在 javascript 中过滤扩展数组的类的对象调用它的构造函数?

c# - 将数组项与其他数组项进行比较的高效方法

javascript - JQuery,获取输入id

javascript - Azure AD 预检请求未返回数据

javascript - 我应该用 Javascript 还是作为 AJAX 调用进行货币计算?

javascript - 悬停功能适用于警报但无法附加 span 标签

javascript - 如何循环一个数组,并每次获取下一个 3?