ES6学习笔记(三)

来源:互联网 发布:js滚轮时间选择控件 编辑:程序博客网 时间:2024/06/06 16:27

这一篇记录我学习ES6数组扩展的重要知识点.

扩展运算符(spread)是三个点(...)。它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列。
        它与正常的函数参数可以结合使用,非常灵活,后面还可以放置表达式。如果扩展运算符后面是一个空数组,则不产生任何效果。由于它可以展开数组,所以不再需要apply方法,将数组转为函数的参数了。
扩展运算符的应用
1:复制数组
2:合并数组
3:与解构赋值结合
4:字符串
5:实现了Iterator接口的对象
6:Map和Set结构,Generator函数

Array.from()方法用于将两类对象转为真正的数组:类似数组的对象和可遍历的对象,实际应用中常见的类似数组的对象Dom操作的NodeList集合以及函数内部的arguments对象Array.from都可以将它们转为真正的数组
它还可以接受第二个参数,作用类似于数组的map方法,用于对每个元素进行处理 ,将处理后的值放入返回的数组


Array.of()用于将一组值转化为数组,一个参数时表示数组的长度,二个参数及以上才会返回由参数构成的数组 ,

数组实例的copyWithin()在当前数组内部,将指定位置的成员复制到其他位置,返回当前数组,会改变当前数组
三个参数 
target 必选 从该位置开始替换数据
start(可选) 从该位置开始读取数据默认0  负数表示倒数
ennd(可选)   到改为之前停止读取数据默认数组长度,负数表示倒数



数组实例的find()用于找出第一个符合条件的数组成员,它的参数是一个回调函数
所有数组成员依次执行该回调函数.知道找到第一个返回值为true的成员返回该成员 ,如果没有返回undefined


数组实例的findIndex()方法返回第一个符合条件的数组成员的位置.
如果所有成员都不符合条件则放回-1


数组实例的fill()使用给定的值填充一个数组 数组中已有的元素会被替换
还可以接受第二个第三个参数,用于指定填充的位置和结束位置


数组实例的entries() keys() values()三个方法都是用于遍历数组,
keys()用于对键名的遍历,values()是对键值得遍历,entries()是对键值对的遍历


数组实例的includes()
返回一个布尔值,表示某数组是否包含给定的值,与字符串的include方法类似
该方法的第二个参数表示搜索的起始位置,默认为0 ,负数表示倒数,如果大于数组长度重置为0


数组的空位指数组的某一个位置没有任何值,空位不是undefined,空位就是没有任何值