У меня есть код javascript (внутри объекта):
toggle: function() {
var me = this;
var handler = function() { me.progress() };
me.intervalId = setInterval(handler, me.intervalTime);
//...More code
}
Я как бы новичок в javascript, поэтому, делая это, насколько я могу судить, фактически передает переменную me
в анонимную функцию. Я хотел посмотреть, есть ли более декларативный способ сделать это? Я хотел что-то по линии:
var handler = (function(o) { o.progress();})(this));
но это, похоже, не работает... Я что-то упустил? Это случай, когда "так работает язык, поэтому просто объявляйте локальную переменную и обрабатывайте ее"?
UPDATE:
Источником моей проблемы было/это мое нечеткое понимание области и закрытия в javascript. Я нашел эту статью, чтобы помочь мне понять немного больше.