JavaScriptでOOPを学ぼうとしています。
特定のメールスレッドで費やされた時間を返すことになっている次のコードを作成しました。
function mailThread(url) {
this.timerIsOn = true;
this.c = 0;
this.url = url;
this.timerCounter = function () {
if(this.timerIsOn) { //doesnt get called??
console.log('timerison');
this.c = this.c + 1;
console.log(this.c);
} else {
this.windowTimeOpen = this.c
}
}
this.timerInterval = setInterval(this.timerCounter, 1000);
}
mailThread1 = new mailThread('test');
ただし、 this.timerIsOn は undefined を返すように見えるため、タイマーが実行されません。ここで何が間違っていますか?
また、次の Fiddle でこれをテストしました: http://jsfiddle.net/B5vt5/