node學習--回調函數
阿新 • • 發佈:2017-07-10
function 內容 異步 ava 執行 新建 請求 pan 輸出
node是一個平臺,既不是語言,也不是javascript的庫,只是node的運行環境選擇了javascript語言。node是異步、非阻塞、單線程、錯誤優先的。
新建一個text.txt 文件 內容為:123456
1.阻塞代碼示例
var fs = require("fs"); var data = fs.readFileSync("text.txt") //同步讀取文件,這裏會產生的是二進制流 console.log(data); // 輸出二進制流 console.log("執行完畢");
輸出結果,是
<Buffer 31 32 33 34 35 36>
執行完畢
在文件沒讀取完之前是不會往後讀取文件的
2非阻塞
var fs = require("fs"); fs.readFile("text.txt‘,function(err,data){ // 異步執行 if(err){ return console.error(err); //錯誤優先 } console.log(data); }) console.log("執行完畢");
輸出
執行完畢
<Buffer 31 32 33 34 35 36> 文件加載會單獨啟動一個進程去處理,代碼繼續執行,非阻塞的優勢可以處理大量的並發請求。
node學習--回調函數