0

データ構造から作成した Javascript オブジェクト (Dojo/ステートフル オブジェクト) があります。そのステートフル オブジェクトを標準のハッシュ オブジェクトに変換したいと考えています。

a = {test: "a test"};
b = new stateful(a);
new_a = new object(a);

この理由は、基本オブジェクト クラスを持つオブジェクトを渡す必要がある関数があるためです。データ構造が同じであっても、ステートフル オブジェクトを渡しても機能しません。

私はそれをやっていることがわかりました

new_a = b;
new_a.__proto__ = new_a.__proto__.__proto__

私が使用しているバージョンのChromeで私が望むことを行いますが、これは本当に悪い方法だと思います.

4

1 に答える 1

1

元のオブジェクトの各プロパティのウォッチを作成できます。これにより、元のオブジェクトがステートフル オブジェクトへの変更と同期されます。

この例では、オブジェクトを拡張して元のdojo/Statefulオブジェクトを保持し、ウォッチを追加して元のオブジェクトを更新します。

http://jsfiddle.net/cswing/YJHtH/

于 2013-02-27T16:24:42.300 に答える