如何复制2d阵列的部分?

时间:2016-06-03 06:50:14

标签: javascript

我在谷歌应用程序脚本中使用JavaScript,我非常困惑为什么没有简单的方法按值复制东西。我只想要一种简单的方法将我的矩阵值2的一部分复制到新的矩阵矩阵1中。为什么这不可能?

var temp = []; 
for (var t = 0; t<9;t++) {temp[t]= 0;}; //[0,0,0,0,0,0,0,0,0]
var matrix1 = [];
for (var x = 0; x<20;x++) {matrix1[x]=temp;};
for (var x = 0; x < 20; x++) {
  for (var y = 0; y < 9 ; y++) {
    matrix1[x][y] = values2[x+1][y+1];
}};

上面的代码用相同的(最后一行)填充矩阵。

1 个答案:

答案 0 :(得分:0)

将数组作为参考传递在编程语言中很常见。在这种情况下,您甚至不需要temp

var matrix1 = [];
for (var x = 0; x < 20; x++) {
  matrix1[x] = [];
  for (var y = 0; y < 9; y++) {
    matrix1[x][y] = values2[x + 1][y + 1];
  }
};