javascript異步執行的一些例子

Ear7659 8年前發布 | 4K 次閱讀 JavaScript

function a() { 

var n = 0; 

for(var i=1;i<10000000;i++) { n=i+n; } 

document.getElementById('a1').value=n; 

function b() { 

document.getElementById("a2").value=22222; 

}

 a(); b();

看上面的這兩個函數,在執行的結果寫入兩個input時,肯定是a函數執行完畢后,再執行b函數,這就是單線程排隊。如何異步執行這兩個函數,也就是說,a執行較慢,b不用等待a結束就直接執行。 
##setTimeout 神秘的函數 
這個函數就是異步的關鍵所在,看代碼:

function c(fuc) { setTimeout(function(){ a(); fuc; },1000); } c(b());

在這里用setTimeout()執行a函數和b函數,則會產生異步執行,b函數不會等待a執行完畢。


 本文由用戶 Ear7659 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!