IEのウィンドウインタラクション中のJavaScript配列の問題

興味深い問題に遭遇しました。 私のサイトページには、一般的なフォームの単純な構造ではなく、特定のオブジェクトの配列があります。
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を介して配列を渡すことですが、それはどういうわけか...不器用か何か...


Source: https://habr.com/ru/post/J85700/


All Articles