Показать сообщение отдельно
  #1 (permalink)  
Старый 11.04.2016, 10:49
Аватар для woojin
Аспирант
Отправить личное сообщение для woojin Посмотреть профиль Найти все сообщения от woojin
 
Регистрация: 13.08.2012
Сообщений: 38

this не в контексте объекта
есть такой объект:
var answerTimer = {
    this: answerTimer,
    timerAnswer: -1,
    answerTimerId: null,
    timer: function () {
        ++this.timerAnswer;
        this.toPrint();
        this.answerTimerId = setTimeout(this.timer, 1000);
    },
    reset: function () {
        this.timerAnswer = 0;
    },
    stop: function () {
        this.reset();
        clearTimeout(this.answerTimerId);
    },
    toPrint: function () {
        document.getElementById("answerTimer").innerHTML = "last answer: " + this.timerAnswer + " sec";
    },
};

при вызове setTimeout из первой функции, в this оказывается контекст window!
как сделать что бы this был в контекст самого объекта?

Последний раз редактировалось woojin, 11.04.2016 в 10:52.
Ответить с цитированием