写了一个验证码倒计时60s的小demo,帮助记忆和区分setInterval和setTimeout。htmljs//setInterval重复循环计时,需要清零定时器(clearInterval)functiongetTime1(){vartime1=60;varval='';codeTimes=setInterval(function(){if(time1<=0){clearInterval(codeTimes);$('input#btn1').val("获取验证码btn1");$('input#btn1').attr("disabled",false);}else{time1--;val=time1+'Recoverafter';$('input#btn1').val(val);$('input#btn1').attr("disabled",true);}},1000);}//setTimeout倒计时,只重复一次,计时需要重复调??用vartime2=60;functiongetTime2(){if(time2<=0){$('input#btn2').val("获取验证码btn2");$('input#btn2').attr("已禁用",false);时间2=60;}else{time2--;val=time2+'之后恢复';$('input#btn2').val(val);$('输入#btn2').attr("禁用",true);setTimeout(function(){gettime()},1000)}}1、如上代码所示,setInterval会自动重复,setTimeout不会每隔指定的时间重复setInterval只执行相应的函数或代码即可,所以会使用clearInterval清除和取消setInterval()设置的定时操作2.setTimeout只执行一次,所以在进行定时操作时,需要反复调用该函数。3.setTimeout多用于延时操作,SetInterval多用于重复操作。