return 的返回值 ?

var count=5;
var counter=setInterval(timer, 1000); //1000 will  run it every 1 second
function timer()
{
    count=count-1;
    if (count<=0 )
    {
        clearInterval(counter);
        return;
        
    }
    document.getElementById("timer").innerHTML=count; 
    
}

这里为什么有写return,那么倒计时到最后一个数字1停止,不写return,倒时计为零停止。

阅读 2.7k
4 个回答

return会终止函数执行,当count为0时,有return,执行完clearInterval(counter);,再执行return,终止,不会执行document.getElementById("timer").innerHTML=count; 所以最后一次显示的值为1。相同的道理,没有return,会多执行一步,为0时还会执行document.getElementById("timer").innerHTML=count;,即显示0。

return 就可以从函数退出而不执行 document.getElementById("timer").innerHTML=count;

因为return后,后面这段就不执行了document.getElementById("timer").innerHTML=count;//这时刚好是写0的

加了return 下面就不执行了 直接跳出这个函数

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题