理解 Node.js 中的不同錯誤型別和處理方法


錯誤型別包括:

  • 語法錯誤

  • 執行時錯誤

  • 邏輯錯誤

語法錯誤:

這些錯誤很容易發現,因為大多數開發工具(如 Visual Studio Code)會在出現語法錯誤時顯示紅線。工具提供的解決方案建議可能並不總是正確,但它能幫助你瞭解程式碼中出錯的具體位置。

執行應用程式時,控制檯終端會顯示錯誤資訊。控制檯日誌可以精確指出錯誤發生的行數。

常見的語法錯誤包括缺少程式碼塊的閉合括號,需要識別正確的程式碼塊。

執行時錯誤:

示例:如果我們在傳送響應之前遺漏了 `return` 關鍵字,如下所示:

return req.on('end', ()=>{
   const parsedData = Buffer.concat(requestBody).toString();
   const username = parsedData.split('=')[1];
   fs.writeFile('username.txt', username, (error)=>{
      console.log(error);
   });
   //redirect
   res.statusCode=302;
   res.setHeader('Location','/');
   res.end();
});

在上面的程式碼中,我們只有 `res.end()`,如果 `end()` 函式之後有任何程式碼修改了響應物件,就會導致執行時錯誤。

執行時錯誤很難在程式碼的編譯階段發現。

邏輯錯誤:

邏輯錯誤比執行時錯誤更難發現,因為在大多數情況下,它甚至不會顯示錯誤訊息,但應用程式的功能與預期不符。

要解決邏輯錯誤,需要除錯應用程式。

要使用偵錯程式,請選擇 App.js 檔案,然後從選項卡中選擇“執行”->“啟動除錯”。

你將看到一個除錯控制檯視窗。現在,在要除錯程式碼的行處新增斷點。

當收到請求併到達斷點時,可以檢查程式碼。程式碼檢查有助於發現邏輯錯誤並輕鬆糾正。

在除錯過程中,可以看到變數的值,也可以更改變數的值。下面的快照顯示了除錯模式下可用的一些選項。

更新於:2020年5月13日

410 次瀏覽

啟動你的 職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.