メソッドがほとんどないオブジェクトがあり、そのうちの1つをイベントハンドラーとしてバインドしたいのですが、同じオブジェクトの他のメソッドを使用しています。コールバック関数でコンテキストを保持するためのベストプラクティスは何ですか?この目的で一般的に使用されるメソッド$.proxyのjQueryUIコアからわかるように、正直なところ、このアプローチは好きではありません。あまり明確ではありません。
何か提案はありますか?前もって感謝します!
var obj = {
someMethod: function(){...},
callback : function(){
...
this.someMethod(); // or this.someMethod.call(...)
...
},
};
// wrong
$.bind(elm, obj.callback);
// using $.proxy
$.bind(elm, $.proxy(obj.callback, obj));