JS中setInterval方法中函数值的增加不正确。

在setInterval()方法里面定义了一个值,使得x-=1;
secondLength=60;
setInterval(function(){
console.log(secondLength);
secondLength-=1;
setDefault(secondtx,secondLength)
},1000);
大概是这个样子,第一遍运行的时候还正确,secondLength的值每秒递减一,第二遍运行的时候就变成每秒递减2了.不知道为什么,具体的程序有点长,这是我在写一个倒计时的东西的时候用到的..Codepen代码:https://codepen.io/GoodNetize...求助各位大佬们..这是个残废品,因为我好像写不出来了,接下来不知道怎么写..是仿照这个时钟的效果来写的.仿照这个:https://codepen.io/Khatybov/p...
holdtom
浏览 348回答 2
2回答

智慧大石

很可能的原因就是,你的这段定时器代码第二次打开时属于重复声明。可以再每次声明前先请一下定时器idclearInterval(id);id=setInterval(function(){},1000);

胡说叔叔

secondLength=60;clearInterval(timer);vartimer=setInterval(function(){console.log(secondLength);secondLength-=1;setDefault(secondtx,secondLength)},1000);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript