什么是异步

什么是异步?

编程的时候,经常会出现一些事物需要占用时间,比如我们磁盘I/O,网络访问等等都会占用时间,此时有两种策略

第1种就是一直等,没有完成之前一直等待,一直等到有结果后再继续执行;    →同步

第2种,等的时候可以执行后面的程序,如果返回结果了,执行回调函数       →异步

要知道异步语句一定要有回调函数,因为要给异步程序一个入口。我们自己很难模拟异步程序,只能调用系统的异步语句

我们目前接触过的异步语句

setInterval(function(){},1000);         //定时器
setTimeout(funcction(){},2000);         //延时器
animate({},3000,function(){})         // jQuery的动画

xhr.open("get", "text.txt", true);     //Ajax
xhr.send()

同步:一般的计算都是同步场景

<script>
    var a = 0;
    while (a !=3) {
        a = parseInt(Math.random() * 10)
        console.log(a)
    }
    console.log("我执行完了")
</script>

 

异步状态,比如定时器

 

<script>
    var a=0
    setInterval(function(){
        a++;
        console.log(a);
    },1000)
    console.log("我先输出")
</script>

posted @ 2021-10-22 16:15  keyeking  阅读(712)  评论(0编辑  收藏  举报