JavaScriptエラー



try ステートメントは、コード ブロックのエラーをテストします。

catch ステートメント処理エラー。

throw ステートメントを使用してカスタム エラーを作成します。


JavaScript エラー

JavaScript エンジンが JavaScript コードを実行すると、さまざまなエラーが発生します。

構文エラーの可能性があります。通常はプログラマによるコーディング エラーまたはタイプミスです。

スペルの間違い、または言語の機能が欠落している可能性があります (ブラウザーの違いが原因である可能性があります)。

サーバーまたはユーザーからの誤った出力が原因でエラーが発生する可能性があります。

もちろん、他の多くの予測不可能な要因が原因である可能性もあります。


JavaScript がエラーをスローする

エラーが発生したり、何か問題が発生したりすると、通常、JavaScript エンジンが停止し、エラー メッセージが生成されます。

この状況を説明する専門用語は次のとおりです: JavaScript は エラーをスロー します。


JavaScript try と catch

try ステートメントを使用すると、実行時にエラーがテストされるコードのブロックを定義できます。

catch ステートメントを使用すると、try コード ブロックでエラーが発生したときに実行されるコード ブロックを定義できます。

JavaScript ステートメント trycatch はペアで表示されます。

構文

try {
	//在这里运行代码
} catch(err) {
	//在这里处理错误
}

以下の例では、try ブロックのコードに意図的にタイプミスを記述しています。

catch ブロックは、try ブロック内のエラーをキャッチし、それを処理するコードを実行します。

インスタンス

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php中文网(php.cn)</title>
<script>
var txt="";
function message(){
	try {
		adddlert("Welcome guest!");
	}
	catch(err) {
		txt="本页有一个错误。\n\n";
		txt+="错误描述:" + err.message + "\n\n";
		txt+="点击确定继续。\n\n";
		alert(txt);
	}
}
</script>
</head>
<body>

<input type="button" value="查看消息" onclick="message()" />

</body>
</html>

インスタンスの実行 »

「インスタンスの実行」ボタンをクリックして、オンラインインスタンスを表示します。


Throwステートメント

throwステートメントを使用すると、カスタムエラーを作成できます。

正しい専門用語は、例外 を作成または スローすることです (例外)。

try と catch で throw を使用すると、プログラム フローを制御し、カスタム エラー メッセージを生成できます。

構文

throw 例外

例外には、JavaScript 文字列、数値、論理値、またはオブジェクトを指定できます。

この例では、入力変数の値を検出します。値が間違っている場合は、例外 (エラー) がスローされます。 catch はこのエラーをキャッチし、カスタム エラー メッセージを表示します:

インスタンス

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php中文网(php.cn)</title>
<script>
function myFunction(){
	try{ 
		var x=document.getElementById("demo").value;
		if(x=="")    throw "值为空";
		if(isNaN(x)) throw "不是数字";
		if(x>10)     throw "太大";
		if(x<5)      throw "太小";
	}
	catch(err){
		var y=document.getElementById("mess");
		y.innerHTML="错误:" + err + "。";
	}
}
</script>
</head>
<body>

<h1>我的第一个 JavaScript</h1>
<p>请输出一个 5 到 10 之间的数字:</p>
<input id="demo" type="text">
<button type="button" onclick="myFunction()">测试输入</button>
<p id="mess"></p>

</body>
</html>

インスタンスの実行»

オンライン インスタンスを表示するには、[インスタンスの実行] ボタンをクリックしてください


は getElementById 関数のエラーであり、上記の例でもエラーがスローされます。