func1();
},0)
func2();
//在上面這段代碼中func2先執行,func1後執行,0s延遲表示回調函數將插隊到一個能立即執行的時段
//如果不寫0,瀏覽器自動配置時間,多爲10-100ms,所以還是func2先執行,func1後執行
因爲JavaScript是單線程的,較大的程序容易出現阻塞。
setTimeout可以處理這一問題,它可以把較大的程序分成多個片,插入到執行隊列中,在不同的時段執行。
換言之,就是把其它執行塊穿插到大程序內部,實現了僞多線程。
函數庫Concurrent.Thread.js是實現JavaScript多線程的。
下載並引入該庫後,
Concurrent.Thread.create( code block 1 );
code block 2;
代碼塊1不論多大,都不影響代碼塊2的執行。