js 执行完setTimeout再接着执行函数

Posted 侧耳倾听的世界

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 执行完setTimeout再接着执行函数相关的知识,希望对你有一定的参考价值。

var counter = 0;
function increase(){
  var d = jQuery.Deferred();
  var doIncrease = function() {
    if(counter < 10){
        counter++;
        setTimeout(doIncrease, 1000);
    } else {
      d.resolve();
    }
  };
  doIncrease();
  return d.promise();
};

increase().then(function() {
  alert(counter);
});

请看这个例子,是在setTimeOut都执行完之后再alert(counter);

以上是关于js 执行完setTimeout再接着执行函数的主要内容,如果未能解决你的问题,请参考以下文章

js中定时器setTimeout函数的问题?

setTimeout的异步传输机制

求教js中这个语句setTimeout(function()alert('执行完过了3秒了'),2000);

setTimeout()与setInterval()方法区别介绍

定时器setTimeout()和Node.js的Event Loop

js定时器setInterval() 和setTimeout()的区别