【发布时间】:2017-03-08 14:03:10
【问题描述】:
所以,我有一个二维数组,我像这样贴花:
var grille = new Array(60).fill(new Array(30).fill(false));
我希望能够更改数组中一个单元格的值,但是当我这样做时
grille[x][y] = "new value";
我有所有在索引 y 处包含“新值”的 x 数组,而不是 array[x][y]。
所以我有
grille[1][y] = "new value"
grille[2][y] = "new value"
grille[3][y] = "new value"
而不是
grille[x][y] = "new value"
grille[1][y] = false
例如。 这可能是一个菜鸟错误,但我对 javascript 很陌生,不知道该怎么做。
感谢您的帮助。
【问题讨论】:
-
不清楚问题/问题是什么。
-
我想做
grille[x][y] = "new value",改变grille[x][y]的值,但是当我这样做时,不仅grille[x][y]被改变,而且grille[1][y], grille[2][y],...也被改变了,我不知道为什么 -
不是解释这一点的最佳人选,但问题是格栅中的所有数组实际上并不是唯一的,它们都共享相同的引用数组,当您按照您的方式创建它们时会发生这种情况.我认为您正在寻找数组的“深层副本”。
标签: javascript multidimensional-array