01 对象解构
1.狭义对象解构*****
概述:通过狭义对象的属性,解构出狭义对象属性值。
注意:和书写先后顺序没有关系
对象解构经常会用在函数传递参数的时候使用
对象解构用于函数传参:好处,让语义清晰
2.数组解构、数组剩余参数
红色部分:数组解构 a =>1,b=>2,c=>3
蓝色部分:数组剩余参数【rest element】 e = >1,f=>2,g = [3,4,5,6,7,8,9]
蓝色部分:剩余参数三个点表示,而且只能放在最后的变量前面;
3.数组强制解构
概述:数组的强制解构,是将数组打成零散的项;可以解决一道经典面试题:
将类数组转换为数组
//数组强制解构
4.狭义对象的强制解构******
概述:在ES6中可以将狭义对象进行强制解构;就是将某一个对象进行‘克隆’;//对象强制解构
上面写法是狭义对象强制解构,可以将某一个狭义对象进行‘克隆’
对于新的对象:克隆过来属性可以进行修改,没有属性可以进行添加
对于起始对象、克隆出来的对象是两个不同对象,相互没有任何影响。
02 数组迭代方法
概述:在ES6中有给数组添加一些方法;
forEach:遍历
filter:过滤
map:映射
reduce: 缩小、减少
1.forEach
概述:它ES6中给数组新增方法;主要的作用是可以快速遍历数组;
红色部分回调函数执行次数:和数组元素个数
forEach遍历数组
forEach函数执行一次,但是没有返回值
2.filter********
概述:它也是ES6中数组新增的方法;
主要的作用是可以从 某一个数组当中筛选出部分元素作为新的数组的元素;
①回调执行次数和起始数组元素个数有关系
②从起始数组当中筛选出部分元素作为新的数组元素【符合条件元素会作为新的数组元素】
③filter方法执行一次,且有返回值,返回的是一个新的数组
3.map********
概述:在ES6中数组新增的方法map;它主要的作用是可以 从起始数组 当中 映射出一个新的数组;
映射:八个人八个影子
①回调函数执行次数和起始数组元素个数有关
②回调返回数值是作为新的数组元素
③新的数组的元素个数和起始数组一定是相同的
总结:删F改M
4.reduce
概述:reduce也是ES6中给数组新增的方法。
a :默认的初始值 是 起始数组的零号元素,每一次回调返回结果作为下一次a数值
b:reduce遍历数组的时候,其实不是从索引值为0开始的,而是索引值为1的元素开始【B:当前遍历到元素】
result:是 最后一次 回调返回值;
03 狭义对象变化
概述:在ES6中狭义对象也发生很大变化;
1.K-V一致可以省略V
2.狭义对象可以动态添加属性
概述:可以动态修改对象属性值;
3.方法变化*******
4.Object新增方法values||keys||assign
keys||values获取某一个对象全K、全部V,返回的数组
assign:合并多个对象
04 类变化
概述:在ES5中类即为构造函数;需要通过关键字new执行;
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。