try catch finally
生活随笔
收集整理的這篇文章主要介紹了
try catch finally
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><title>try catch finally</title><script>// 異常最大的特征,就是一旦出現(xiàn)異常,后面的代碼將不會再執(zhí)行// 那為了保證后面的代碼在出現(xiàn)異常之后,還能繼續(xù)執(zhí)行,所以就要進行異常處理// 注意 語法異常 try catch無法捕獲// 異常捕獲語句// try catch finally// 手動拋出異常信息 使用throw關鍵字// a();// function test() {// console.log("我是之后的代碼");// }// test();// 語法:// try {// // a();// // 可能會出現(xiàn)問題的代碼// throw "手動拋出異常";// console.log("不再執(zhí)行");// } catch (e) {// // 出現(xiàn)異常后的處理代碼// console.log(e);// }// function test() {// console.log("我是之后的代碼");// }// test();function sum(num1, num2) {if (num1 == undefined || num2 == undefined) {throw {errMsg:"手動拋出異常, 不會在函數(shù)返回值接收到, 而是在catch(e)中接收到",errCode: 13888888888}; // 類似相當于 return {errMsg: "能不能好好玩耍了,乖乖給我傳參",errCode: 13888888888}console.log("不會打印");} else {return num1 + num2;}}// sum(0);try {console.log(sum(0)); // 啥都沒有} catch (e) {console.log(e); // => {errCode: 13888888888, errMsg: "手動拋出異常, 不會在函數(shù)返回值接收到, 而是在catch(e)中接收到"}console.log(e.errMsg); // => 手動拋出異常, 不會在函數(shù)返回值接收到, 而是在catch(e)中接收到} finally {console.log("不管有沒有出現(xiàn)異常,這里代碼都會執(zhí)行"); // => 不管有沒有出現(xiàn)異常,這里代碼都會執(zhí)行}// // 異常捕獲語句的完整形式// try {// // 可能出現(xiàn)異常的代碼// xyz();// // 注意 語法異常 try catch無法捕獲(js執(zhí)行分兩個階段 先解析(預編譯) 后執(zhí)行)// // var a++++;// } catch (e) {// // 出現(xiàn)異常后的處理代碼// console.log(e); // => ReferenceError: xyz is not defined// } finally {// console.log("我是finally中的代碼");// // 不管有沒有出現(xiàn)異常,這里代碼都會執(zhí)行// // node.js// // 做釋放資源的操作// }</script></head><body></body>
</html>
總結
以上是生活随笔為你收集整理的try catch finally的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html5rpg游戏策划案,HTML 5
- 下一篇: 十条实用的jQuery代码片段