关于setTimeout的一个逻辑题

function hh()
{

  for (var i = 1; i <=5; i++) {
    setTimeout(function(){
      console.log(i);
    },100)
  }

  console.log(i);
}

hh();

 

打印结果是:6

                     6(5次)

 

原因:js是单线程。setTimeout会压入执行任务队列,当for循环完了才会执行。

posted @ 2018-05-31 15:30  Milk.╮  阅读(130)  评论(0)    收藏  举报