Web Worker から「postMessage」で送信するオブジェクトのシリアライズは JSON.serialize で、デシリアライズは JSON.parse でできると思いました。しかし、そのワーカー コードを使用して (Firefox で) テストを行いました。
function A() {
this.id = 3;
this.save;
}
var a1 = new A();
var a2 = new A();
a1.save = a2;
postMessage({
'a1' : a1,
'a2' : a2
});
メインファイルには次のものがあります。
w.onmessage = function(event) {
event.data.a2.id = 7;
};
その後、a1.save.id の値も 7 になっています。したがって、参照が必要ですが、 JSON.serialze と JSON.parse を使用すると参照がありません...では、シリアル化はどのように行われますか? すべてのブラウザでその参照を想定できますか? ありがとう!