ES6-数组扩展
1. 扩展运算符 ...
...扩展运算符如同参数一般,将一个数组转化为用逗号隔开的参数序列,主要作用于函数,将数组变为参数序列
console.log(
2.代替数组的apply方法
Math.max.apply(null,arr); //ES5
Math.max(
push函数的...数组参数调用
3.扩展运算符的应用
3.1 合并数组
//ES5 要用contact函数
//ES6 [1,2,...more];
arr1.conact(arr2,arr3); //ES5
[
3.2 与解构赋值结合
let [a,
3.3 函数返回值如果想要返回一个多个值的话也可以用这个
3.4 字符串
字符串通过扩展运算符也可以转化为数组,并且可以识别Unicode
[
3.5 实现iteratro接口
3.6Map与Set解构
4.Array.from()可以及那个各种值转化为真正的数组,并且提供map功能
将类对象 , 也就是伪类数组转化为真正的数组;类似数组对象 ,可遍历的对象
在我们进行DOM操作的时候,得到的是一个伪类数组,这时候我们要想进行遍历的话,需要先转化为数组,然后在用forEach方法尽行遍历
在转化的时候,类数组对象需要有length值
第二个参数,类似于map,对每个值进行处理
5.Array.of()
将一组值转化为数组,可以替代Array()或者new Array()
6.数组的深浅拷贝
arr.copyWithin(target[, start[, end]])
-
target0 为基底的索引,复制序列到该位置。如果是负数,
target将从末尾开始计算。如果
target大于等于arr.length,将会不发生拷贝。如果target在start之后,复制的序列将被修改以符合arr.length。 -
start0 为基底的索引,开始复制元素的起始位置。如果是负数,
start将从末尾开始计算。如果
start被忽略,copyWithin将会从0开始复制。 -
end0 为基底的索引,开始复制元素的结束位置。
copyWithin将会拷贝到该位置,但不包括end这个位置的元素。如果是负数,end将从末尾开始计算。如果
end被忽略,copyWithin方法将会一直复制至数组结尾(默认为arr.length)。
返回值为一个新的数组
注意:有深浅拷贝的问题,
7.find() 和finddex()
寻找符合成员
一个返回成员,一个返回成员位置
8.fill()
填充数组Array.fill('7'); [7,7,7];
9.entries(),keys(),values()
键值对遍历
键值名遍历
键值遍历
10.includes()
返回一个布尔值
Array.includes(value,local);
一个目标值,一个位置
11.数组空位可以用map循环,forEach() 自动掠过空位
总结:
1.作为参数
2.扩展运算符合并数组
3.字符串转化为数组
4.伪数组from方法转化为数组
5.深浅拷贝

浙公网安备 33010602011771号