关于setTimeout和setinterval执行问题

关于setTimeout和setInterval

  • setTimeout:在指定的毫秒数后,将定时任务处理的函数添加到执行队列的队尾。
  • setInterval:按照指定的周期(以毫秒数计时),将定时任务处理函数添加到执行队列的队尾。

虽然说如过讲setTimeout()时间设置成0,方法也不会立马执行的,看下已下的输出

会发现先输出zhuxing,明明时间设置成0,为什么没有马上执行了?因为javascript是单线程编程,它把任务放到队列中,不会同步去执行,必须在完成一个任务后才开始另外一个任务。setTimeout执行只是把任务放到代码中,没有立马去执行,所以说接下去的代码接着跑,直到js这个任务执行完成,才有可能往下执行。

可以测试下最快执行时间

 

 

HTML5标准规定

setTimeout的最短时间间隔是4毫秒;

setInterval的最短间隔时间是10毫秒,也就是说,小于10毫秒的时间间隔会被调整到10毫秒

posted @ 2017-10-15 19:32  solatiry  阅读(298)  评论(0编辑  收藏  举报