Wintermute Engine Forum
Czech forum => Technické fórum => Topic started by: Siky on May 31, 2007, 06:24:45 PM
-
Můžete mi někdo poradit proč mi nechodí to dvoudimenzionální pole array1?
var array1 = new Array();
function napln_data()
{
var temp1;
var array2 = new Array();
for (var j=0; j<3; j=j+1)
{
for (var i=0; i<3; i=i+1)
{
array2[i] = 10*i+j;
Game.LOG(array2[i]);
}
temp1.array = array2;
array1[j] = temp1;
}
}
function vypis_data()
{
var t;
var t2;
for (var j=0; j<3; j=j+1)
{
t = array1[j];
for (var i=0; i<3; i=i+1)
{
t2 = t.array;
Game.LOG(t2[i]);
}
}
Po volání:
napln_data();
Game.LOG("----------");
vypis_data();
to vypíše:
19:16: 0
19:16: 10
19:16: 20
19:16: 1
19:16: 11
19:16: 21
19:16: 2
19:16: 12
19:16: 22
19:16: ----------
19:16: 2
19:16: 12
19:16: 22
19:16: 2
19:16: 12
19:16: 22
19:16: 2
19:16: 12
19:16: 22
Mělo by to přeci vypsat ta samá data, ne?
dík za radu
-
Protoze array2 je porad tentyz objekt, jenom ho plnis trikrat, takze v nem zustanou ty posledni hodnoty.
Zrejme jsi mel na mysli spis tohle:
function napln_data()
{
var temp1;
for (var j=0; j<3; j=j+1)
{
var array2 = new Array();
for (var i=0; i<3; i=i+1)
{
array2[i] = 10*i+j;
Game.LOG(array2[i]);
}
temp1.array = array2;
array1[j] = temp1;
}
}
-
Jo, to je přesně ono, to jsem přehlédl. Díky