setInterval函数后如何访问全局变量。变量即使设置后仍给出未定义或NaN

时间:2018-12-16 23:19:58

标签: angular typescript ionic-framework timer setinterval

这是一个打字稿类。我正在尝试访问setInterval函数中的开始时间和计数。我之前已经设置了值,为什么我们会得到undefined和NaN?以及如何解决这个问题?

<svg class="{{className}}"></svg>

1 个答案:

答案 0 :(得分:4)

尝试使用fat arrow代替函数

(来自文档)

  

this传统上一直是JavaScript的痛点。正如一个明智的人曾经说过的:“我讨厌JavaScript,因为它会很容易失去this的含义”。粗箭头通过捕获周围上下文的含义来修复它。

因此请像这样使用它:

setInterval(() => {  // <-----
  console.log("STARTTIME: " + this.startTime); 
  this.count += 1;
  console.log("COUNT: " + this.count); 
}, 1000);

Stackblitz