JavaScript throw 语句

 JavaScript 语句和变量声明

throw语句抛出一个用户定义的异常。

发生错误时,JavaScript通常会停止并生成错误消息。从技术上讲,这称为“ 抛出错误 ”。

throw语句使您可以创建自定义错误。从技术上讲,这称为“ 抛出异常 ”。

引发异常时,表达式(expression)指定异常的值。以下每个都会引发异常:

throw 'Invalid';  // 生成带有字符串值的异常
throw 32; // 生成值为32的异常
throw true;   //生成值为true的异常

如果将throw和try 和 catch一起使用,则可以控制程序流并生成自定义错误消息。

您可以在我们的JavaScript异常教程中了解有关异常的更多信息。

语法:

throw expression;

function getRectArea(width, height) {
   if (isNaN(width) || isNaN(height)) {
  throw "参数不是一个数字!";
   }
}

try {
   getRectArea(5, 'Z');
}
catch(err) {
   document.getElementById('para').innerHTML = err;
}

测试看看‹/›

浏览器兼容性

所有浏览器完全支持throw语句:

Statement
throw

参数值

参数描述
expression抛出异常。可以是字符串,数字,布尔值或对象

技术细节

JavaScript版本:ECMAScript 3

更多实例

在此示例中,如果值错误,则引发异常(err)。catch语句捕获异常(err),并显示自定义错误消息:

var x = document.querySelector("input").value;
try {
   if(x == "")  throw "is Empty";
   if(isNaN(x)) throw "不是一个数字";
   if(x > 10)   throw "太大";
   if(x < 5)throw "太小";
}
catch(err) {
   document.getElementById("para").innerHTML = "Input " + err;
}
测试看看‹/›

相关参考

JavaScript教程:JavaScript 异常

JavaScript参考:JavaScript try ... catch语句

 JavaScript 语句和变量声明