小码哥的IT人生

JavaScript throw 语句

JavaScript基础 2022-06-08 11:18:21小码哥的IT人生shichen

JavaScript throw 语句

实例

本例例检查输入。如果值是错的,则抛出异常 (err)。

catch 语句捕获异常 (err) 并显示自定义错误消息:

<!DOCTYPE html>
<html>
<body>
<p>Please input a number between 5 and 10:</p>
<input id="demo" type="text">
<button type="button" onclick="myFunction()">Test Input</button>
<p id="message"></p>
<script>
function myFunction() {
  var message, x;
  message = document.getElementById("message");
  message.innerHTML = "";
  x = document.getElementById("demo").value;
  try { 
    if(x == "") throw "is Empty";
    if(isNaN(x)) throw "not a number";
    if(x > 10) throw "too high";
    if(x < 5) throw "too low";
  }
  catch(err) {
    message.innerHTML = "Input " + err;
  }
}
</script>
</body>
</html>

完整实例:

<!DOCTYPE html>
<html>
<body>
<p>请输入一个 5 到 10 之间的数字:</p>
<input id="demo" type="text">
<button type="button" onclick="myFunction()">检查输入</button>
<p id="message"></p>
<script>
function myFunction() {
  var message, x;
  message = document.getElementById("message");
  message.innerHTML = "";
  x = document.getElementById("demo").value;
  try { 
    if(x == "")  throw "is Empty";
    if(isNaN(x)) throw "not a number";
    if(x > 10)   throw "too high";
    if(x < 5)  throw "too low";
  }
  catch(err) {
    message.innerHTML = "Input " + err;
  }
}
</script>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

定义和用法

throw 语句抛出(产生)错误。

当发生错误时,JavaScript 通常会停止,并生成错误消息。

其技术术语是:JavaScript 会抛出(throw)错误。

throw 语句允许您创建自定义错误。

其技术术语是:抛出异常(exception)。

异常可以是 JavaScript 字符串、数字、布尔值或对象:

throw "Too big";    // 抛出文本
throw 500;          // 抛出数字

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

有关 JavaScript 错误的更多知识,请学习我们的 JavaScript 错误教程。

浏览器支持

语句 Chrome IE Firefox Safari Opera
throw 支持 支持 支持 支持 支持

语法

throw expression;

参数值

参数 描述
expression 必需的。要抛出的异常。可以是字符串、数字、布尔值或对象。

技术细节

JavaScript 版本: ECMAScript 3

相关页面

JavaScript 教程:JavaScript 错误

JavaScript 参考手册:JavaScript try/catch/finally 语句

版权所有 © 小码哥的IT人生
Copyright © phpcodeweb All Rights Reserved
ICP备案号:苏ICP备17019232号-2  

苏公网安备 32030202000762号

© 2021-2024