一:新增数据类型
- ES5数据类型:number、string、boolean、null、undefined、object
- ES6数据类型:bigInt、symbol
二:新增的数据结构
ES5具有的数据结构:Array、Object
ES6新增的数据结构:Set、Map
Set、Map分别是对Array、Object的完善,
- set:数组的拓展,set相当于没有重复项的数组。Set的构造函数可接收数组。
- Map:传统Object的键只能是字符串,Map可以理解成键可以是变量的对象。
三:Array
Array.from: 将类数组转为数据,比如set、map、argument、dom对象
Array.of: 将一组数组转为数组
Array新增的from方法,与es5新增的Set数据类型,可以配合使用,达到过滤数组的功能如下
Array.from(new Set([1,2,1,2])); // 返回[1,2]
四:模块化
1、导出:默认/命名导出
一个模块中只能有一个默认导出export default ,但是却可以有任意命名导出(0个,1个,多个)。如A.js可以如下两种方式导出
- export default 42
- export const A=42
2、引入
如果模块是默认导出,则引入时不使用花括号;如果为命名导出,引入时需要加上花括号。
- import someting from "./A" // 引用默认导出的模块,import 模块时的命名是随意的
- import {A} from "./A" // 引入命名导出的模块,需要加{},引入与导出只名称需一致