ES6语法新特性

366 阅读1分钟

let const var 区别

  • let const 不能重复声明,不存在变量提升,有块作用域
  • let 和 var可以重新赋值,const(常量)不可以重新赋值

箭头函数

  • 箭头函数用于赋值式
  • 箭头函数的几种简写方式
//没有形参时
let fn = _ => {}
//形参只有一个时
let fn = a => {}
//函数体只有一行时
let fn = a => a
  • 函数参数默认值设置
    • 在箭头函数中给形参赋的值就是参数默认值
let fn = (a = 20, b = 30) => {
    return a + b
}
fn()//50
fn(5, 6)//11

解构赋值

  • 对象的解构赋值
let obj = {name: 'jack', age: 18, sex: '男'}
let {name, age, sex} = obj
//将里面的属性依次赋值给变量name, age, sex
// 解构对象给变量时,变量名要和属性名相同
  • 数组的解构赋值
let arr = [1, 2, 3]
let [a, b, c] = arr
将1,2,3赋值给啊a,b,c

展开运算符

  • 数组的展开运算符
let arr1 = [1, 2, 3]
let arr2 = [...arr, 4, 5, 6]
arr2 = [1, 2, 3, 4, 5, 6]
  • 对象的展开运算符
let obj1 = {name: 'rose', age: 18 }
let obj2 = {...obj1, sex: '女'}
obj2 = {name: 'rose', age: 18, sex: '女'}
  • 字面量简写
const name = 'jack'
const age = 10
let obj  = {
    name,age
}

错误捕获

try {
        // 可能出错的代码
        // console.log('开始执行-')
        // console.log(dddjd)

        // 可以抛出一个异常
        throw new TypeError('')
    } catch (error) {// error 错误对象
        // 处理错误
        console.log('处理错误>>>>>>' + '代码出错');
    } finally {
        // 不论try-catch语句是否出错,这里的代码都会执行
        console.log('不论try-catch语句是否出错,这里的代码都会执行')
    }
    console.log('执行结束');