var array = [];
var arr = [];
var i;
for (i = 0; i < 2; i++) {
var temp = [];// using array[i] = new Array() works fine
array.push(temp);
arr.push(temp);
}
array[0].push(1);
arr[0].push(2);
alert(array[0]);
上記の JavaScript コードは [1,2] を出力します。' push([]) ' の代わりに' new Array() ' を使用すると、 [1] が得られます。問題を見つけることができましたが、理由がわかりません。誰かがこれを説明できますか