1、ES6与JavaScript之间的关系
ES6是JavaScript的一个版本:JavaScript是基于ECMAScript规范实现的编程语言,而ES6(ECMAScript 2015)是该规范的一个具体版本。
2、ES6的基础功能
(1)let和const
- let用于声明变量,let声明的变量只在let命令所在的代码块内有效
- const用于声明常量,const声明一个只读的常量,一旦声明,常量的值就不能改变。
(2)模板字符串和箭头函数
- ()=>{}:使用箭头声明函数,不用再书写function关键字
- this:非箭头函数中的this指向函数的调用者;箭头函数中的this指向定义时所在的对象;全局作用域中this指向window
(3)解构赋值
-
\]=\[\](数组的解构赋值):let \[a,b,c\]=\[1,2,3\]; 可以从数组中提取值,按照对应位置,为左侧变量赋值;
-
\] = "" ,{} = ""(字符串的解构赋值):在解构前,字符串被转换成了一个类似数组的对象 (不常用,了解即可)1、以数组的形式解构,const \[a, b, c, d, e\] = 'hello';2、以对象的形式解构,let { 0: a } = 'hello'
-
剩余参数:...arg:将一个不定数量的参数表示为一个数组
-
...:将内容展开,属于浅拷贝
(5)数据结构
- Set:是一系列无序、没有重复值的集合
- Map:是键值对的集合,但是"键"的范围不限于字符串,各种类型的值(包括对象)都可以当做键
(6)遍历器
- Iterator:为各种不同的数据结构提供统一的访问机制
- for...of:遍历成员, for...of循环可以使用的范围包括数组、Set和Map结构、某些类似数组的对象(比如arguments对象、DOM NodeList对象)