iT邦幫忙

2023 iThome 鐵人賽

DAY 14
1
自我挑戰組

那些有趣的程式系列 第 14

【Day14】從零開始的程式大亂鬥:錯誤處理

  • 分享至 

  • xImage
  •  

今天要談的是錯誤處理 try-catch

try-catch 基本上是用來處理一些例外資訊的,也就是用來預防一些想不到的錯誤。
使用錯誤處理的話,除了可以幫助我們找到一些可能發生例外的錯誤外,更可以加快我們抓BUG的速度。

以JavaScript為例:

try {
    var result = JSON.parse('This is not valid JSON');
    console.log(result);
}
catch (error) {
    console.error(error);
}
finally {
    console.log('finally.');
}

輸出結果:

SyntaxError: Unexpected token T in JSON at position 0
    at JSON.parse (<anonymous>)
    at Object.<anonymous> (C:\code\catch.js:2:23)
    at Module._compile (node:internal/modules/cjs/loader:1254:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1308:10)
    at Module.load (node:internal/modules/cjs/loader:1117:32)
    at Module._load (node:internal/modules/cjs/loader:958:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
    at node:internal/main/run_main_module:23:47
finally.

當JSON解析失敗時,就不會往下執行:

console.log(result);

而是會直接跳到 catch 內去執行:

console.error(error);

finally 則是最後一定會執行的,即使發生錯誤。


上一篇
【Day13】從零開始的程式大亂鬥:類別
下一篇
【Day15】從零開始的程式大亂鬥:檔案處理
系列文
那些有趣的程式35
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言