2013-06-24 111 views
2

我有这样的2D阵列:镜像2D阵列

var array = [ 
    [0,0,0,0,0], 
    [0,0,0,0,0], 
    [0,0,1,0,0], 
    [0,0,0,0,0], 
    [0,0,0,0,0] 
]; 

我基本上想要做的是,当一个节点被改变时,例如

array[3][2] = 1; 

它改变了阵列的另一侧,例如,

array[1][2] = 1; 

[编辑] 基本上,我选择随机x和随机y坐标并填充有1

I.e.

如果我从左侧更改了2个节点,我想从右侧更改同一个2个节点。

+5

什么是“数组的对面”? – frenchie

+0

好像在镜子里看着它 –

+1

首先,我认为这只是一个2D数组。其次,没有数据变化的事件,所以你需要一个自定义函数来设置数据,并确保这个函数总是用来更新数组 – musefan

回答

0

继续我的评论,创建一个函数来更新数据。然后你就可以计算出“对面”和更新太:

function updateArray(array, x, y, v){ 
    array[x][y] = v; 
    var newX = array.length - 1 - x; 
    array[newX][y] = v; 
} 

使用示例:

updateArray(array, 3, 2, 1);//will set array[3][2] and array[1][2] 

Here is a working example

+0

我相信这就是我想要的!谢谢 - 我已经有一个(狡猾的)功能,但这似乎是正确的 - 谢谢! –