TypeScriptを使い始めたばかりです。 Visual Studio 2012 Express for Webでサンプルプロジェクトを作成しました。このサンプルには、自分では説明できない動作のコード行があります。TypeScriptのsetInterval動作
まず活字体コード:
start() {
this.timerToken = setInterval(() => this.span.innerHTML = new Date().toUTCString(), 500);
}
だから、このラインは500msごとtimerTokenの値を設定し、現在の日付/時刻を持つHTML要素を更新します。
これに相当しますJavaScriptで:
Greeter.prototype.start = function() {
this.timerToken = setInterval(this.span.innerHTML = new Date().toUTCString(), 500);
};
だから私は、活字体のコード行のラムダ式について疑問に思ったし、それを削除したが、その後日付/時刻文字列はもう更新されません。
簡単な質問...なぜですか?
わかりました...私はスコープの違いを見ませんでした。ありがとう、今私はそれを得る:) – seveves