Мне присваивается переменная "this", поэтому я могу легко использовать ее в обратных вызовах и закрытиях.
Это плохая практика? Есть ли лучший способ вернуться к исходной функции?
Вот типичный пример.
User.prototype.edit = function(req, res) {
var self = this,
db = this.app.db;
db.User.findById('ABCD', function(err, user)) {
// I cannot use this.foo(user)
self.foo(user);
});
};
User.prototype.foo = function(user) {
};
Обычно вы используете этот подход или нашли более чистое решение?