我刚开始玩 TypeScript。我已经使用 Visual Studio 2012 Express for Web 创建了一个示例项目,该示例有一行代码,其行为我自己无法解释。
首先是 TypeScript 代码:
start() {
this.timerToken = setInterval(() => this.span.innerHTML = new Date().toUTCString(), 500);
}
所以这一行每 500 毫秒设置一次 timerToken 的值,并用当前的日期/时间更新一个 HTML 元素。
在 JavaScript 中,这将等同于:
Greeter.prototype.start = function () {
this.timerToken = setInterval(this.span.innerHTML = new Date().toUTCString(), 500);
};
所以我想知道 TypeScript 代码行中的 lambda 表达式并将其删除,但日期/时间字符串将不再更新。
这么简单的问题……为什么?