博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
javascript 错误与调试
阅读量:6069 次
发布时间:2019-06-20

本文共 1975 字,大约阅读时间需要 6 分钟。

1.JavaScript 错误 - throw、try 和 catch

try 语句测试代码块的错误。

catch 语句处理错误。

throw 语句创建自定义错误。

1.1 JavaScript 错误

当 JavaScript 引擎执行 JavaScript 代码时,会发生各种错误。

可能是语法错误,通常是程序员造成的编码错误或错别字。

可能是拼写错误或语言中缺少的功能(可能由于浏览器差异)。

可能是由于来自服务器或用户的错误输出而导致的错误。

当然,也可能是由于许多其他不可预知的因素。

1.2JavaScript 抛出(throw)错误

当错误发生时,当事情出问题时,JavaScript 引擎通常会停止,并生成一个错误消息。

描述这种情况的技术术语是:JavaScript 将抛出一个错误。

1.3JavaScript try 和 catch

try 语句允许我们定义在执行时进行错误测试的代码块。

catch 语句允许我们定义当 try 代码块发生错误时,所执行的代码块。

JavaScript 语句 try 和 catch 是成对出现的。

try {  //在这里运行代码} catch(err) {  //在这里处理错误}
var txt=""; function message() {     try {         adddlert("Welcome guest!");     } catch(err) {         txt="本页有一个错误。\n\n";         txt+="错误描述:" + err.message + "\n\n";         txt+="点击确定继续。\n\n";         alert(txt);     } }

1.3Throw 语句

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

正确的技术术语是:创建或抛出异常(exception)。

如果把 throw 与 try 和 catch 一起使用,那么您能够控制程序流,并生成自定义的错误消息。

throw exception

异常可以是 JavaScript 字符串、数字、逻辑值或对象。

本例检测输入变量的值。如果值是错误的,会抛出一个异常(错误)。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;    }}

2.JavaScript 调试

2.1JavaScript 调试工具

在程序代码中寻找错误叫做代码调试。

调试很难,但幸运的是,很多浏览器都内置了调试工具。

内置的调试工具可以开始或关闭,严重的错误信息会发送给用户。

有了调试工具,我们就可以设置断点 (代码停止执行的位置), 且可以在代码执行时检测变量。

浏览器启用调试工具一般是按下 F12 键,并在调试菜单中选择 "Console" 。

console.log() 方法

如果浏览器支持调试,你可以使用 console.log() 方法在调试窗口上打印 JavaScript 值:

a = 5;b = 6;c = a + b;console.log(c);

2.2设置断点

在调试窗口中,你可以设置 JavaScript 代码的断点。

在每个断点上,都会停止执行 JavaScript 代码,以便于我们检查 JavaScript 变量的值。

在检查完毕后,可以重新执行代码(如播放按钮)。

2.3debugger 关键字

debugger 关键字用于停止执行 JavaScript,并调用调试函数。

这个关键字与在调试工具中设置断点的效果是一样的。

如果没有调试可用,debugger 语句将无法工作。

开启 debugger ,代码在第三行前停止执行。

 

转载于:https://www.cnblogs.com/lingwang3/p/8371033.html

你可能感兴趣的文章
oracle中nvarchar2字符集不匹配
查看>>
Mysql5.6.22源代码安装
查看>>
每天一个linux命令(5):rm 命令
查看>>
mksquash_lzma-3.2 编译问题
查看>>
【转帖】C# DllImport 系统调用使用详解 托管代码的介绍 EntryPoint的使用
查看>>
PHP JAVA Bridge桥的最新使用
查看>>
免费工具
查看>>
锋利的JQuery —— DOM操作
查看>>
Swift应用开源项目推荐
查看>>
BZOJ1845 : [Cqoi2005] 三角形面积并
查看>>
机器语言——码运算(具体解释反码补码由来)
查看>>
二维码的生成细节和原理
查看>>
关于B树的一些总结
查看>>
学习资料下载地址
查看>>
exit()和_exit()和return
查看>>
apache开源项目-- NiFi
查看>>
java 导出excel
查看>>
lintcode:next permutation下一个排列
查看>>
PX4/PixHawk无人机飞控应用开发
查看>>
Makefile学习(一)[第二版]
查看>>