1

配列に値を追加する必要があります。

例のコード:

temp[0]=new Array("0","0");
temp[1]=new Array("0","0");
temp[2]=new Array("0","0");
temp[3]=new Array("0","0");
temp[4]=new Array("0","0");

vt=new Array("1","0");
temp.splice(3, 0, vt);
temp.splice(4, 0, vt);

temp[3][1]="R";    

私はこの出力を期待しています:

1-0,0
2-0,0
3-0,0
4-1、R
5-1,0
6-0,0
7-0,0

ただし、実際の出力は次のとおりです。

1-0,0
2-0,0
3-0,0
4-1、R
5-1、R
6-0,0
7-0,0

何か案が?関数のインデックス作成の問題だと思いsplice()ます!

4

1 に答える 1

5

Javascript配列はオブジェクトです。オブジェクトを配列に配置するときは、基本的にそのオブジェクトへの参照を配列に配置します。ここでは、両方の場所に同じ参照を配置しています。参照を変更すると、他のすべての参照に反映されます。代わりに、参照が別のオブジェクトを指すように、両方の場所に新しい別個のオブジェクトを挿入する必要があります。

だから代わりに

vt=new Array("1","0");
temp.splice(3, 0, vt);
temp.splice(4, 0, vt);

行う

temp.splice(3, 0, new Array("1","0"));
temp.splice(4, 0, new Array("1","0"));
于 2010-06-12T13:49:22.430 に答える