es6新特性

151 阅读2分钟

es6的新特性

默认参数

这个默认参数可以直接放到函数签名中,比如:

const object=function(width=20,height=30){
}

像这样可以直接默认参数为多少

模版表达式

就是可以在``中用${}来镶入变量

image.png

可以直接在字符串中镶嵌

多行字符串

这个就比较好理解 原来是每个字段之间用+号连接 , 现在一个``,把所有字符串包裹就可以了

改进的对象表达式

在es5中定义一个典型的对象表达式,定义一些属性

var obj={
    name:"admin",
    age:'200',
    url:""
}

想这样的

箭头函数 =>

简化了代码的书写方法,之前没写一个函数都需要去function一次,如果使用了剪头函数就会简明很多,剪头表示返回的内容,把一系列的函数操作放到{}里面,如果是不带参数的函数,()也不能省略

let fun = () = >{
    
 }

Promise

Promise 简单说是一个容器,里面保存着某个未来才会结束的时间(通常是一个异步) es6规定promise对象是一个构造函数,用来生成promise实例

const promise = new Promise (function(reslove,reject){
      if(){
      resove(value)
      }
      else{
      reject(error)
      }
      
})

Promise构造函数式接受一个函数作为参数,函数的两个参数为reslove,reject。 reslove的作用是将Promise对象的状态从‘未完成’变成“完成”,异步操作完成以后再把得到的结果作为参数传递出去; reject的作用将Promise对象的状态从未完成到“失败”,在异步操作失败时调用,把报出的错误,作为参数传递出去

先简单的概括一下,下次出一个详细的promise讲解

块级作用域的let和const

let表明变量,是可以更改的 const表明常量,常量定义了就不能更改,对象除外,因为对象的指向没有改变,const在声明是是必须被赋值的。 两者都是块级作用域 都不可以重复声明 image.png

1.class

使用class去定义一个类

class Person{
    
}
console.log(new Person())

模块化