简单Javascript倒计时如何从setInterval本地函数更新全局
我从db中提取倒计时数据(只是一个像10,15…这样的数字),并使其等于全局值。 刚刚下课简单Javascript倒计时如何从setInterval本地函数更新全局,javascript,typescript,Javascript,Typescript,我从db中提取倒计时数据(只是一个像10,15…这样的数字),并使其等于全局值。 刚刚下课 countdown:any; console.log(this.countdown)//我10秒后得到数据 let downloadTimer=设置间隔(功能计数器(倒计时){ 倒计时--;//如何更新此。倒计时? 控制台日志(倒计时); 如果(countdown您试图传递单个标量值,this.countdown,确实如此,但您不能像更新对象或数组那样更新该值,从而获得更新原始值的副作用 您可以将引用
countdown:any;
console.log(this.countdown)//我10秒后得到数据
let downloadTimer=设置间隔(功能计数器(倒计时){
倒计时--;//如何更新此。倒计时?
控制台日志(倒计时);
如果(countdown您试图传递单个标量值,this.countdown
,确实如此,但您不能像更新对象或数组那样更新该值,从而获得更新原始值的副作用
您可以将引用传递给此
,然后使用它更新原始文件:
类测试{
构造函数(){
这是倒计时=20
}
doit(){
console.log(this.countdown);//我得到了10秒的数据
let downloadTimer=设置间隔(功能计数器(obj){
obj.countdown-->//如何更新此.countdown?
控制台日志(对象倒计时);
if(obj.倒计时
console.log(this.countdown);//i got data 10 sec
let downloadTimer=setInterval(function counter(countdown){
countdown--; // how to update this.countdown ?
console.log(countdown);
if(countdown <= 0){
clearInterval(downloadTimer);
console.log("time is up!");
}
},1000,this.countdown);