У меня есть объект с методом, который я хотел бы передать функции в качестве обратного вызова. Однако внутри обратного вызова this
больше не относится к моему объекту. Почему бы и нет?
Я знаком с использованием переменных, чтобы обойти проблему при передаче функционального литерала:
var obj = {
a: function () {
var me = this;
console.log(this);
setTimeout(function () {
console.log(this); // Not obj
console.log(me); // This works!
}, 100);
}
};
Как я могу исправить это в этом случае?
var obj = {
b: function () {
setTimeout(this.callback, 100);
},
callback: function () {
console.log(this); // =(
}
};