我可以通过引用在Javascript列表(或矩阵)的列表?



我试图使用函数changeGrid()改变列表列表的内容。里面的每个字符都应该替换为"X",网格应该全局更改。这可能吗?当变量是一个对象时,我见过这样做,但我不确定对于这样的矩阵该怎么做。谢谢。

var grid =  [['T', 'W', 'Y', 'R'],
['E', 'N', 'P', 'H'],
['G', 'Z', 'Qu', 'R'],
['O', 'N', 'T', 'A']];

function changeGrid(table){
table = [
[ 'X', 'X', 'X', 'X' ],
[ 'X', 'X', 'X', 'X' ],
[ 'X', 'X', 'X', 'X' ],
[ 'X', 'X', 'X', 'X' ]
]
return table
}
console.log(grid)
console.log(changeGrid(grid));
console.log(grid);

已经通过引用传递了。您将需要执行forEach(或类似的操作)。下面是一个简单的解决方案:

var grid =  [['T', 'W', 'Y', 'R'],
['E', 'N', 'P', 'H'],
['G', 'Z', 'Qu', 'R'],
['O', 'N', 'T', 'A']];

function changeGrid(table){
table.forEach((e1, i1) => e1.forEach((e2, i2) => table[i1][i2] = 'X'))
}
console.log(grid)
changeGrid(grid);
console.log(grid);

相关内容

最新更新