Kopieren von komplexen Arrays in JavaScript
Andreas Bleul
- javascript
Ich habe mich auf das Abenteuer eingelassen, ein etwas aufwendigeres Spiel unter JavaScript zu programmieren.
Da ergibt sich das Problem, ein komplexes Array zu kopieren.
Die Zuweisung neuesArray = altesArray klappt natürlich
nicht, weil nur der Pointer kopiert wird.
Experimente mit slice() führen auch zu nix.
Nun sieht der Code so aus:
function copyBoard( BoardS , BoardD )
{
BoardD['mv'] = BoardS['mv'];
BoardD['Cnt'] = new Array();
BoardD['Cnt'][1] = BoardS['Cnt'][1];
BoardD['Cnt'][2] = BoardS['Cnt'][2];
for ( x = 0 ; x < 10 ; x++ )
{
BoardD[x] = new Array();
for ( y = 0 ; y < 10 ; y++ )
{
BoardD[x][y] = new Array();
BoardD[x][y]['d'] = BoardS[x][y]['d'];
BoardD[x][y]['o'] = BoardS[x][y]['o'];
BoardD[x][y]['p'] = BoardS[x][y]['p'];
}
}
}
Muß das so lahm und kompliziert sein - oder hat jemand eine bessere Idee ?
Thanx,
Andreas