Mic*_*rci 2 javascript setinterval
我有一个带有setInterval的类的简单示例,该类每5秒调用一次main()。谈到print()时,它返回TypeError:this.print不是函数。而且我真的很困。为什么如果我在没有setInterval的情况下调用main(),则它可以正常运行,但是在setInterval的情况下,它将失败?有点奇怪。有没有任何解决方法可在没有此问题的情况下定期调用main()?
"use strict";
class test {
constructor() {
this.interval = setInterval(this.main, 5000);
}
print(){
console.log('Teeeessssttt');
}
main(){
this.print();
}
}
const a = new test();
Run Code Online (Sandbox Code Playgroud)
您需要使用bind:
this.interval = setInterval(this.main.bind(this), 5000);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
207 次 |
| 最近记录: |