1. 程式人生 > >nodejs漸入佳境[12]-node非同步操作

nodejs漸入佳境[12]-node非同步操作

如下非同步程式碼:

1
2
3
4
5
6
7
8
9
10
11
12
13
console.log('start...');

setTimeout(()=>{
 console.log('first callback');
},2000)

setTimeout(()=>{
 console.log('second callback');
},0)



console.log('end...');

列印結果為:

1
2
3
4
start...
end...
second callback
first callback

總結:
首先執行了下面console.log(‘end…’);,再執行了settimeout的回撥函式,即便是settimeout中的時間為0.
原因是nodejs的事件迴圈機制,出現了非同步的效果。
參考:深度理解nodejs[2]-事件迴圈

image.png