JS中同步与异步

不讲过多定义,举两个例子说明下

例一:

console.log(100);

setTimeout(function(){
    console.log(200);
},1000);

console.log(300);

上面代码就是一个异步过程,结果是:

它先打印出100和300,一秒后再打印出200。

 

 

例二:

console.log(100);

alert(200);

console.log(300);

上面代码是一个同步过程,它先打印出100,然后确认弹窗后,再打印出300。

 

由上例子可以知道,

  同步会阻塞代码执行,即必须等alert执行结束,才能执行下面的代码,从上自下按顺序执行;

  而异步则不会阻塞代码执行,会跳“执行”,即跳过了定时器部分,先执行了后面的代码,再回过来执行定时部分。

 

所有“等待的情况”都需要异步,如定时任务,网络请求,事件绑定。

 

posted @ 2017-07-28 09:05  黑色瓶子  阅读(284)  评论(0编辑  收藏  举报