JavaScriptでオブジェクトを配列に割り当てるときに奇妙な問題が発生しました ここに完全なコードがあります
var co = {'yAxis':10};
var dynCharts = new Array();
for (var x=0; x<2; x++){
dynCharts[x] = co;
}
//assigning to first array only
dynCharts[0].yAxis = { 'a':'1'};
//now alert second array
alert(dynCharts[1].yAxis.a);
上記のコード例の場合、最初に co というオブジェクトがあり、そのオブジェクトを配列に割り当てています。ここで、最初の配列の yAxis というプロパティを変更したいのですが、2 番目の配列の yAxis オブジェクトの値も変更しています。
このコードの JSfiddle はこちら: http://jsfiddle.net/qvKaZ/
プロパティの方法でそれを行う方法がなぜ起こっているのか、誰かが私を助けてくれませんか?