私が Javascript でオブジェクト指向コーディングを行う方法について、何かがいつも私を悩ませてきました。コールバックがある場合、関数を最初に呼び出したオブジェクトを頻繁に参照したいので、次のようにします。
MyClass.prototype.doSomething = function(obj, callback) {
var me = this; // ugh
obj.loadSomething(function(err, result) {
me.data = result; // ugh
callback(null, me);
});
}
まず、追加の変数を作成することは常に...私には過剰に思えました。さらに、「me」変数をコールバックに戻すことで、問題 (循環参照? 非 GCd オブジェクト?) が発生する可能性があるのではないかと考えなければなりません。
これについてもっと良い方法はありますか?このアプローチは悪ですか?