Rumah  >  Soal Jawab  >  teks badan

javascript - js异步问题

var c = 0;

function printIt(){
    console.log(c)
}

function plus(){
    //    加上耗时操作,没有调用回调函数,所以js一直阻塞在这里,
    //    不能执行,所以结果还是 0,没有变化。
    setTimeout(function(){
        c += 1;
    }, 1000);
}

plus();
printIt();

理解不了 这里不是1秒后就执行c+=1么,为什么会阻塞

大家讲道理大家讲道理2767 hari yang lalu428

membalas semua(2)saya akan balas

  • PHP中文网

    PHP中文网2017-04-11 10:19:13

    注释有毒并不会阻塞。

    执行后只是快速打出一个0

    balas
    0
  • 迷茫

    迷茫2017-04-11 10:19:13

    这里没有阻塞,你设置了setTimeout后,c += 1;会在你打印后再执行

    balas
    0
  • Batalbalas