一、JS中常见错误以及错误处理
1.SyntaxError:语法错误
代码编写不符合规范,例如出现了中文符号、缺少括号等(出错后整体代码不再运行)。
2.ReferenceError:引用错误
使用了未声明的变量(影响之后的代码执行)。
3.TypeError:类型错误
当前调用的方法或函数不是一个函数形式(影响之后的代码执行)。
4.自定义错误:程序员自己指定的错误
格式:throw 错误内容(影响之后的代码执行)。
处理方式:
try{ //可能会产生错误的代码 }catch(err){ //try中出现错误才会执行 //将错误信息保存到err中 //执行错误处理 }
举例如下:
var age = 98; if (age < 18 || age > 60){ throw '非法的年龄';//抛出错误 } //错误处理:出现错误后不再影响后续代码 try{ //可能会产生错误的代码 }catch(err){ //try中出现错误才会执行 //将错误信息保存到err中 }
二、ES6
ES6全称ECMAScript6,是js第六套标准规范,提供了更多且更为强大的功能,使得JavaScript编程语言更为完善。以下介绍一些相关概念:
1. 块级作用域
大括号之间的语句块例如if else语句、while语句、for循环等带之间的语句。块级作用域下let和const声明都是局部的,外部无法访问,可防止全局污染
2. 参数增强
参数增强简单说就是为参数设置默认值,在参数没有赋值时用默认值代替。格式如下:
function(a,b,c = 0){ //es6设置默认值方法为在形参处赋值 b = b || 0; //此处为es6之前设置默认值的方式 }
3. 箭头函数
简化了匿名函数的写法,但不等价于匿名函数,格式:( ) => { 函数体 }。
function sort(a,b){ return a - b; } //简化后 sort(a,b) => { return a - b; });
4. 模板字符串
解决了字符串的拼接问题 ,格式:` 模板字符串 ${ JS表达式 } `
let title = '联想拯救者'; let price = 6699; let isOnsale = '1'; console.log( ` 标题:${title} 价格:${price.toFixed(2)} 是否在售:${isOnsale ? '是' : '否'} ` );