ES6是ECMA Script 6.0的简称, 就是语言最新的标准, 发布于2015.06 目标让js语言成为能支持去编写大型复杂的应用语言, 成为企业级开发语言.
ES6 主要是为了解决 ES5 的先天不足,比如 JavaScript 里并没有类的概念,但是目前浏览器的 JavaScript 是 ES5 版本,大多数高版本的浏览器也支持 ES6,不过只实现了 ES6 的部分特性和功能。
ES6中添加了两个重要的JS关键字 :
- const
- let
let关键字 : 声明变量,作用类似于var,但let是在代码块内有效,var 是在全局范围内有效
let声明的变量不存在预解析且同一作用域内不允许重复
const关键字 : 声明常量
用来表示/声明常量 const声明的常量不允许重新赋值 const声明的变量必须初始化
解析构造
解析构造也称为解构
解构赋值是对赋值运算符的扩展。
他是一种针对数组或者对象进行模式匹配,然后对其中的变量进行赋值。
在代码书写上简洁且易读,语义更加清晰明了;也方便了复杂对象中数据字段获取。
数组的解构赋值
传统 var arr=[1,2,3];
ES6 var[a,b,c]=[1,2,3];
Math对象解构
let{cos,sin,random}=Math;
字符串解构赋值
let [a,b,c,d,e]='hello'
对象的解构赋值(和顺序无关)
let{name,age}={name:'张三',age:22}
对象如果设置了别名,那么原来的名字无效
let{name:别名}--------------起别名的方法