鍍金池/ 問答/HTML/ nodejs怎么捕獲不到readFile的回調(diào)函數(shù)中拋出的錯(cuò)誤

nodejs怎么捕獲不到readFile的回調(diào)函數(shù)中拋出的錯(cuò)誤

我訪問一個(gè)不存在的文件,然后嘗試在回調(diào)函數(shù)中拋出,并想在外面捕獲它,為什么捕獲不到了?
代碼如下

clipboard.png

報(bào)錯(cuò)如下

clipboard.png

回答
編輯回答
夏夕

https://tc39.github.io/ecma26...

規(guī)范中描述 try-catch 作用的是 代碼塊 (a block of code) ,你這里在里面的callback中拋出的error,就應(yīng)該在里面 進(jìn)行 try-catch, 這本就是為了避免這中異步情況的,外部作用域正常執(zhí)行流程其實(shí)早已結(jié)束了。 異步代碼塊早跟 這個(gè)作用域的 try-catch 沒關(guān)系了。

2017年8月6日 15:04
編輯回答
怪痞
readFileSync / readFile 

看下官方文檔這兩個(gè)的區(qū)別吧~

2018年3月7日 05:22