JavaScriptエラー-throw、tryとcatchの使用マニュアル

4278 ワード

try ステートメントコードブロックのエラーをテストします.
catch ステートメント処理エラー.
throw ステートメントを使ってカスタムエラーを作成します.
finally ステートメントはtryとcatch文の後、トリガ異常があるかどうかにかかわらず、このステートメントが実行されます.
JavaScript tryとcatch
try ステートメントは、実行時にエラーテストを行うコードブロックを定義することができます.
catch ステートメントは、tryコードブロックにエラーが発生したときに実行されるコードブロックを定義することを許可します.
JavaScript文 try 和 catch ペアで現れます.
構文
try {
    ...    //     
} catch(e) {
    ...    //        
} finally {
    ...    //    
}
finally文
finally文は、前のtryおよびcatchに異常があるかどうかを問わず、このコードブロックを実行します.
例:
function myFunction() {
  var message, x;
  message = document.getElementById("p01");
  message.innerHTML = "";
  x = document.getElementById("demo").value;
  try { 
    if(x == "") throw "    ";
    if(isNaN(x)) throw "       ";
    x = Number(x);
    if(x > 10) throw "  ";
    if(x < 5) throw "  ";
  }
  catch(err) {
    message.innerHTML = "  : " + err + ".";
  }
  finally {
    document.getElementById("demo").value = "";
  }
}
Throw文
throw文は、カスタムエラーを作成することを許可します.
正確な技術用語は、異常を作成または投げ出すことです.
throwをtryとcatchと一緒に使用すると、プログラムフローを制御して、カスタムエラーメッセージを生成することができます.
例:本例では入力変数の値を検出します.値が間違っていると、異常(エラー)が発生します.catchはこのエラーを捉えて、カスタムエラーメッセージを表示します.
function myFunction() {
    var message, x;
    message = document.getElementById("message");
    message.innerHTML = "";
    x = document.getElementById("demo").value;
    try { 
        if(x == "")  throw "   ";
        if(isNaN(x)) throw "    ";
        x = Number(x);
        if(x < 5)    throw "  ";
        if(x > 10)   throw "  ";
    }
    catch(err) {
        message.innerHTML = "  : " + err;
    }
}
注:getElementById関数が間違っていると、上記の例もエラーを出します.