19
2020
09

未命名

中的错误、:try 语句测试代码块的错误,catch 语句处理错误,throw 语句创建自定义错误,finally 语句在 try 和 catch 语句之后,无论是否有触发异常,该语句都会执行

当错误发生时,当事情出问题时, 引擎通常会停止,并生成一个错误消息,这种情况叫抛出错误

try 和 catch:try 语句允许我们定义在执行时进行错误测试的代码块,catch 语句允许我们定义当 try 代码块发生错误时,所执行的代码块,两个语句成对出现

语法:try {    ...    //异常的抛出

} catch(e) {                            blob.png

   ...    //异常的捕获与处理          故意在 try 块的代码中写了一个错字  

} finally {                    catch 块会捕捉到 try 块中的错误,并执行代码来处理它    ...    //结束处理

}

finally 语句不论之前的 try 和 catch 中是否产生异常都会执行该代码块blob.png不管输入值是否正确都会执行代码清空输入框

的调试工具:在程序代码中寻找错误叫做代码调试,很多浏览器都内置了调试工具

内置的调试工具可以开始或关闭,严重的错误信息会发送给用户,有了调试工具,我们就可以设置断点 (代码停止执行的位置), 且可以在代码执行时检测变量

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

设置断点:在调试窗口中,你可以设置 代码的断点在每个断点上,都会停止执行 代码,以便于检查 变量的值,

debugger 关键字:用于停止执行 ,并调用调试函数这个关键字与在调试工具中设置断点的效果是一样的如果没有调试可用,debugger 语句将无法工作开启 debugger ,代码在第三行前停止执行blob.png

ie浏览器调试:打开浏览器→在浏览器中选择工具→在工具中选择开发者工具→最后选择控制它

变量提升: 中,函数及变量的声明都将被提升到函数的最顶部,变量可以在使用后声明,也就是变量可以先使用再声明blob.png   blob.png

初始化不会提升:只有声明的变量会提升,初始化的不会blob.png结果:x=5;y=7;

blob.png结果为x=5;y=undefined   y 输出了 undefined,这是因为变量声明 (var y) 提升了,但是初始化(y = 7) 并不会提升,所以 y 变量是一个未定义的变量类似声明的变量blob.png

严格模式:格模式(strict mode)即在严格的条件下运行

使用“use strict”指令:"use strict" 指令在 1.8.5 (ECMAScript5) 中新增,它不是一条语句,但是是一个字面量表达式,在 旧版本中会被忽略,"use strict" 的目的是指定代码在严格条件下执行严格模式下你不能使用未声明的变量

严格模式通过在脚本或函数的头部添加 "use strict"; 表达式来声明,可以在浏览器 开启调试模式,查看报错信息 blob.png    blob.png  全局"use strict" 声明blob.png  blob.png

严格模式限制:不允许使用未声明的变量   允许使用未定义的对象:blob.png   blob.png

不允许删除变量或对象:blob.png  blob.png不允许删除函数:blob.png blob.png

不允许变量重名: blob.png  blob.png不允许使用八进制:blob.png   blob.png

不允许使用转义字符:blob.png  blob.png不允许对只读属性赋值:blob.png blob.png

不允许删除一个不允许删除的属性:blob.png  blob.png变量名不能使用 "eval" 字符串:blob.png  blob.png 变量名不能使用 "arguments" 字符串:blob.png blob.png

不允许使用以下这种语句:blob.png blob.png作用域 eval() 创建的变量不能被调用:

blob.png blob.png禁止this关键字指向全局对象:blob.png  如果使用构造函数时,如果忘了加new,this不再指向全局对象,而是报错blob.png

严格模式新增了一些保留关键字:implements,interface,let,package,private,protected,publicstatic,yield  blob.png  blob.png

« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。