dataArray = [
{id1:data1},
{id2:data2},
{id3:data3}
]
これは本質ではありません。
プログラムには、この配列を開くウィンドウに渡す必要がある瞬間があります。 ウィンドウコードは自然に書かれています:
dataArray = window.opener.dataArray;
問題は、window.opener.dataArrayとそれに応じてdataArrayの両方が配列ではなくなったことです。つまり:
window.opener.dataArray instanceof Array // false
dataArray instanceof Array // false, .
したがって、配列に固有のすべてのメソッドが失われます。
もちろん、解決策はJSONを介して配列を渡すことですが、それはどういうわけか...不器用か何か...