29 es6 -- 数组扩展

97 阅读2分钟

扩展(展开)运算符 ...

使用

image.png

image.png

应用

把数组进行复制

1、采取push的方法

声明一个新的空数组,遍历原数组,然后push进去

image.png

2、采取拼接的方式 concat

声明一个新的空数组,原数组与新空数组进行拼接

image.png

3、采取 es6新增的扩展运算符 ...

... 是 把数组里面的值展开,然后再用 [] 套起来

image.png

注 : 使用es6新增的扩展运算符,进行复制的时候,只能是浅拷贝

合并数组

image.png

image.png

与解构赋值结合使用

image.png

image.png

将伪数组转化为真正的数组

image.png

Array.from

把伪数组转为真正的数组

image.png

arguments是一个伪数组,无法使用数组的一些方法

我们可以利用 Array.from ,这样就可以转为真正的数组了

image.png

image.png

Array.of ()

会生成一个新的数组

image.png

image.png

在 Array创建数组时

用Array创建数组的时候,若() 参数里面只写了一个参数,那么它就不认为是创建了一个值为n的数组 ;而是当成创建了一个数组,里面有n个空值

image.png

image.png

用 Array.of 创建数组时

而使用Array.of 创建数组时,就是创建了一个 数组里面是值是n

image.png

image.png

find 查找

它只会找到第一个出现的符合条件的,返回的是 第一个符合条件的值

find(function(item){}) 

find : 里面是一个函数

item : 表示的是出现的每一项的值

image.png

image.png

findIndex 查找索引

返回的是第一个符合条件的索引号

image.png

findLast 从后往前找寻

返回的结果是第一个符合条件的值

image.png

findLastIndex 从后往前找

返回的结果是第一个符合条件的索引号 image.png

fill 填充

fill(n)

里面是一个参数的时候,那么就是设置数组里面的所有值都为n

image.png

image.png

fill(n,m,x)

可以是替换了 image.png

数组扁平化

就是将一个多层嵌套的数组变成一个单层数组

 eg : [1, [2, [3, [4, [5]]]]] ----> [1,2,3,4,5]

flat

就是解决数组扁平化的 ,对于简单的数组来说

image.png

flatMap(function(item){})

解决数组扁平化的,此方法是解决复杂的数组来说的

image.png