1 回答

TA貢獻(xiàn)1884條經(jīng)驗(yàn) 獲得超4個(gè)贊
在node應(yīng)用程序中,執(zhí)行一部操作的函數(shù)將回調(diào)函數(shù)作為最后一個(gè)參數(shù),回調(diào)函數(shù)接收錯(cuò)誤對象作為第一個(gè)參數(shù)。
舉例說明:
創(chuàng)建一個(gè) input.txt ,文件內(nèi)容為:“你好??!Hello”
創(chuàng)建 main.js 文件,代碼如下:
var fs = require("fs");fs.readFile('input.txt', function (err, data) {if (err){console.log(err.stack);return;}console.log(data.toString());});console.log("程序執(zhí)行完畢");
以上程序中 fs.readFile() 是異步函數(shù)用于讀取文件。 如果在讀取文件過程中發(fā)生錯(cuò)誤,錯(cuò)誤 err 對象就會(huì)輸出錯(cuò)誤信息。
如果沒發(fā)生錯(cuò)誤,readFile 跳過 err 對象的輸出,文件內(nèi)容就通過回調(diào)函數(shù)輸出。
執(zhí)行以上代碼,執(zhí)行結(jié)果如下:
程序執(zhí)行完畢
你好??!Hello
接下來我們刪除 input.txt 文件,執(zhí)行結(jié)果如下所示:
程序執(zhí)行完畢
Error: ENOENT, open 'input.txt'
因?yàn)槲募?input.txt 不存在,所以輸出了錯(cuò)誤信息。
- 1 回答
- 0 關(guān)注
- 772 瀏覽
添加回答
舉報(bào)