es6新增常用功能
1.新增let,const,import变量的定义,其实class也算是一种变量的定义
2.新增数据类型:Symbol数据类型;set和map数据类型
3.字符串扩展,字符串新增方法
4.变量的解构
5.运算符的扩展
15.Iterator和for..0f循环
6.数组的扩展
7.对象的扩展,对象新增方法,Proxy,Reflect
8.函数的扩展
函数参数默认值设置,reset参数
箭头函数
Generator函数的语法
async函数
Promise对象
9.数值的扩展
10.正则的扩展
14.class基本语法,继承
14.module语法,module的加载实现
1.let,const,import定义变量
特点:
(1)块级作用域,没有变量提升,存在暂时性死区;
(2)let定义变量,const定义常量
import引入js的model文件,数据单项,没有联动
2 Symbol数据类型
定义:用来表示对象独一无二的属性;没有任何两个symbol值是相同的;
例如let a= Symoble('mySymbole');let b= Symoble('mySymbole'). a==b. //false
3.set数据类型
定义:它类似于数组,但是成员的值都是唯一的,可以用来数组的去从 Array.from(new Set(arr))
WeakSet 结构与 Set 类似,也是不重复的值的集合。但是,它与 Set 有两个区别。
首先,WeakSet 的成员只能是对象,而不能是其他类型的值。
M.size
m.add(key,valu)
M.has(key)
M.deltet(key)
M.clear()
M.keys(set)
M.values(set)
M.foreach(set)
4.map数据类型
定义:它类似于对象,也是键值对的集合,但是“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键
const m = new Map();
常用方法
M.size
m.set()
m.get()
M.has()
M.deltet()
M.clear()
M.keys()
M.values()
M.foreach()
类型转换
map与数组互相转换:解构和重定义
map与对象互相转换:如果健值不是字符串,先把key转成字符串,在转对象;
map与json的互相转换:如果健值不是字符串,可以先通过数组结构map,在转json,如果健值全是字符串,可直接转json
9.变量的解构
从数组和对象中提取值,对变量进行赋值,这被称为解构;吧等号右边的转换成对象,数组进行解构;
1.数组的解构
2.对象的解构
3.字符串的解构:字符串转数组,在解构
4.数值和布尔值的解构赋值:先转对象,在结构
5.函数的返回值,参数都可以进行解构
备注:
(1)等号前后的数据结构相同,不是可遍历的结构使用解构会报错
(2)如果解构不成功,变量的值就等于undefined
(3)结构可以设置默认值
(4)而对象的属性没有次序,变量必须与属性同名
(5)对象结构,可以指定属性名称,用:号标识,例如let {foo: baz}={foo:1}
(6)对象和数组结构可以混合使用。
(7)大括号在行首的解构,必须放在打括号内
(8)数组也可以进行对象结构,因为数组也是对象
(9)undefined和null无法转为对象,对它们进行解构赋值,都会报错
用途
1.交换变量的值
2.函数返回多个值
3.函数的参数定义
4.提取 JSON 数据
5.输入模块的指定方法
网友评论