前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JavaScript第十四弹——ES6(三)数组的扩展

JavaScript第十四弹——ES6(三)数组的扩展

作者头像
萌兔IT
发布2019-07-25 17:10:00
5380
发布2019-07-25 17:10:00
举报
文章被收录于专栏:萌兔it

Hello,小伙伴们,周末愉快呀,今天延续前天的话题,上次说了ES6对字符串的扩展,今天我们来谈谈约定好的数组的扩展吧~~

1

数组的扩展

扩展运算符

首先登场的是扩展运算符,它一般是通过(…)表示的。它能够将一个数组转化为逗号分隔的参数序列。

比如:

了解了什么是扩展运算符,我们来说说它会被用到哪里吧~

1)函数调用:如下面的函数中,我们将数组a通过扩展运算符变成了参数,并进行相加得到结果,可以说函数中所需要的参数越多,扩展运算符的作用越能体现。

有一点要注意:当扩展运算符被放置在了括号中时,JS的引擎就会认为这是函数的调用。如果这时不是函数调用就会报错了,啥意思,看个例子!上面的一段代码能够正常输出,但是下面一段代码就会报错啦!因为被当成函数调用啦!

2) 复制数组:还记得浅拷贝与深拷贝吗?数组是一个复合型数据,对它进行复制,我们就要通过深拷贝,但是大家都知道这很麻烦。

ES5中我们可以选择concat函数另辟蹊径来复制:

ES6中:就可采用扩展运算符咯!可以采用两种方式对数组进行复制,可以将扩展运算符使用于被复制项也可以是复制目标项。

3)与解构赋值相结合:但是要注意,在用于解构赋值的时候,一定要把扩展运算符放在最后哦~不然会报错!(是不是有小伙伴忘记了什么是解构赋值了

,快回到上一篇看看)

常用函数

1)Array.from():将类似数组和可遍历的对象转化成数组,如set、字符串等

2)Array.of():将一组值转化为数组

数组实例函数

1)copyWithIn(target,start):在当前数组内部,将指定位置的成员复制到其他位置(会覆盖原有成员),然后返回当前数组,千万不要误会这个参数哦,并不是从几号位到几号位而是把start开始到数组结束的值复制到target开始的位置。看下面的例子就是从3号位到结束的值复制到从0号位开始的位置。

2)find() vs findIndex():

find():用于找出第一个符合条件的数组成员。

findIndex():findIndex方法的用法与find方法非常类似,返回第一个符合条件的数组成员的位置,如果所有成员都不符合条件,则返回-1。与find()不同的是,find返回的是查到的值,而findIndex返回的是位置号

3)fill():fill方法使用给定值,填充一个数组。

4)entries(), keys(), values()

entries():对键值对的遍历

keys():对键名的遍历

values():对键值的遍历

5)includes():表示某个数组是否包含给定的值,与字符串的includes方法类似

6)flat() vs flatMap()

flat():将子数组的成员取出来,添加在原来的位置。默认拉平一层,可以添加参数代表拉平的层数

flatMap():对原数组的每个成员执行一个函数(相当于执行Array.prototype.map()),然后对返回值组成的数组执行flat()方法。该方法返回一个新数组,不改变原数组。

好啦~今天的分享就到这里啦,记住数组新的方法了吗,喜欢兔妞的文章请关注+在看哦~~

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-03-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 萌兔it 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档