0

別のオブジェクトから制御する必要があるオブジェクトがあります。

より良い方法とその理由は何ですか?

コンストラクターでオブジェクトを参照し、他window.object = thisのコンストラクターから呼び出しますwindow.object.method()

また

のようにリッスンを開始$(window).on 'objectEvent'し、他のオブジェクトからイベントをトリガーします$(window).trigger('objectEvent')

私は現在2番目のアプローチを使用していますが、それが正しいかどうか疑問に思っています。

4

1 に答える 1

2

2 番目のアプローチは、最も悪い方法です。グローバル名前空間を汚染することを避けたい、つまり にプロパティを追加したいwindow

2 番目のケースでは、リスナーを追加しています。これは、イベント名に名前を付ける場合にはそれほど悪くはありませんが、最良のオプションは、中間オブジェクトを使用してPub/Subパターンを実装することです。これにより、両方のオブジェクトが双方向で相互に作用します。それを通して。

于 2012-10-26T16:25:56.927 に答える