Nodejs基礎系列-09- javascript 異常處理

//01- try{} catch{}
try{
    var x=badVarName;
}catch (err) {
    console.log(err.name+': "'+ err.message + '" occurred when assigning x.');
}
//ReferenceError: "badVarName is not defined" occurred when assigning x.

//02-拋出自己的異常

function sqrRoot(x){

    try {
       if(x=="") throw {message:"參數爲空,不能開方運算!"};
       if (isNaN(x)) throw {message:"非數字不能進行開方!"};
       if (x<0) throw {message:"負數不能進行開方!"};

       return "sqrt("+ x + ")= " +Math.sqrt(x);

    } catch (err) {
        return err.message;
    }

}
function writeIt() {
    console.log(sqrRoot("five"));
    console.log(sqrRoot(""));
    console.log(sqrRoot("4"));
    console.log(sqrRoot("-4"));
}
writeIt();

//03-finally : try,catch執行後一定會執行的內容。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章