什么是異步?
編程的時候,經常會出現一些事物需要占用時間,比如我們磁盤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>

