美文网首页
JS中的setTimeout和setInterval

JS中的setTimeout和setInterval

作者: 天涯西剑 | 来源:发表于2020-02-11 10:45 被阅读0次

    基本要点:

    1. 两者都用于计时
    2. 两者都是异步任务
    3. JavaScript中首先执行主线程任务,其次执行异步任务
    4. 两者中的语句会立即执行,函数会延时执行。参考 js表达式和语句区别

    目前就只感受到这几点,用程序来展示一下
    关于要点1和2:

    setTimeout(function(){console.log("1")},1000);
    setTimeout(function(){console.log("2")},1000);
    

    1和2基本上会同时出现,因为两个setTimeout几乎同时被加入到任务队列并计时,计时互不打扰,所以都会在一秒后执行相关命令。要想隔一秒再执行的效果,可以这样写。

    setTimeout(function(){console.log("1")},1000);
    setTimeout(function(){console.log("2")},2000);
    

    关于要点3:

    setTimeout(function(){console.log("1")},0);
    console.log("2");
    

    上面程序会先输出2,再输出1。因为setTimeout是异步任务,会被先放到任务队列,等主程序运行完之后再运行。

    关于要点4:

    setTimeout(console.log("1"),1000);
    setTimeout(function(){console.log("2")},2000);
    

    上面程序会立即输出1,然后过两秒后输出2。

    相关文章

      网友评论

          本文标题:JS中的setTimeout和setInterval

          本文链接:https://www.haomeiwen.com/subject/albtfhtx.html