Javascript 如何延迟内部for循环并使外部for循环等待直到内部循环完成迭代?

Javascript 如何延迟内部for循环并使外部for循环等待直到内部循环完成迭代?,javascript,settimeout,Javascript,Settimeout,我该怎么做? 如何延迟外部循环直到内部for循环完成,并记住我要将每个内部for循环迭代延迟2秒? 我想要达到的结果是: 控制台中的外部循环打印:0 外部循环等待内部循环完成 内循环打印:0、1、2,延迟2秒 然后外环打印:1 外部循环等待内部循环完成 内循环打印:0、1、2,延迟2秒 等等 for(变量i=0;i

我该怎么做? 如何延迟外部循环直到内部for循环完成,并记住我要将每个内部for循环迭代延迟2秒? 我想要达到的结果是:

控制台中的外部循环打印:0

外部循环等待内部循环完成

内循环打印:0、1、2,延迟2秒

然后外环打印:1

外部循环等待内部循环完成

内循环打印:0、1、2,延迟2秒

等等

for(变量i=0;i<3;i++)
{
警报(一);
对于(var j=0;j<3;j++)
{
警惕(j);
}
}
如中所述,您可以使用等待函数并将其包含在代码中

function wait(ms) {
    var start = Date.now(),
        now = start;
    while (now - start < ms) {
      now = Date.now();
    }
}

for (var i = 0; i < 3; i++)  {
  alert(i);
  for (var j = 0; j < 3; j++) {
    alert(j);
    wait(2000);
  }
}
函数等待(毫秒){
var start=Date.now(),
现在=开始;
同时(现在-开始<毫秒){
now=Date.now();
}
}
对于(变量i=0;i<3;i++){
警报(一);
对于(var j=0;j<3;j++){
警惕(j);
等待(2000年);
}
}

所以你真正想要的是同步超时,是吗?请看这里:和这里:使用递归,而不是循环。然后可以轻松地异步继续。