JavaScript数组(Array)方法总结

javascript中数组的方法种类众多,并且数组的方法还有原型方法和从object继承的方法,这里只总结了数组在每个版本中原型上的方法。在总结数组的方法之前,先了解一下数组的概念和创建方式。数组并不是数字的组合,而是数据的组合,代表的是一组数据。
创建数组的方法有两种:
1.字面量创建
在这里插入图片描述
2.构造函数创建方式
在这里插入图片描述
以下是数组方法的总结:
1.push
参数:push(newDate1,newDate2…)。
返回值:数组被增加之后的长度。
功能:在数组的尾部增加数据,增加的数据是push的参数。
有没有修改原数组:有修改原数组
在这里插入图片描述

2.unshift
参数:push(newDate1,newDate2…)。
返回值:数组被增加之后的长度。
功能:在数组的头部增加数据,增加的数据是unshift的参数。
有没有修改原数组:有修改原数组。
在这里插入图片描述

3.pop
参数:无。
返回值:被删除的数据。
功能:删除最后一位数据。
有没有修改原数组:有修改原数组。
在这里插入图片描述

4.shift
参数:无。
返回值:被删除的数据。
功能:删除第一位数据。
有没有修改原数组:有修改原数组。
在这里插入图片描述

5.splice
返回值:被删除的数据。
有没有修改原数组:有修改原数组。
(1)参数:一个值,表示索引。
功能:从指定索引开始删除所有数据。
在这里插入图片描述

(2) 参数:两个值。第一个表示索引,第二个表示个数。
功能:从指定索引(参数1),删除指定个数(参数2)。
在这里插入图片描述

(3)参数:多个值。表示从索引为4的数据开始删除,删除3个,并将第三个参数及后面所有参数,插入到4的位置。
功能:从指定索引,删除指定个数个,填充第三个参数向后数所有的数据。
在这里插入图片描述

6.reverse
参数:无。
返回值:返回原数据。
功能:翻转数组,将数据倒序排列。
是否改变原数组:没有改变。
在这里插入图片描述
7.join
功能:根据指定分隔符将数组中的所有元素放入一个字符串,并返回这个字符串。
是否改变原数组:没有改变。
(1) 参数:无。
返回值:转成字符后数据的长度。在这里插入图片描述
(2)参数:一个值.
返回值:转成字符后,除去第一位数据和最后一位数据,参数从第二位数据开始每隔一个字符显示一次。
在这里插入图片描述
8.slice
(1)参数:一个值。
返回值:从指定索引开始截取,直到结束。
功能:从指定索引开始截取数据,返回成一个新数组。
是否改变原数组:没有改变。
在这里插入图片描述
(2)参数:两个值。
返回值:从指定索引开始截取数据,截取到指定位置的前一个数据为止。
功能:从指定索引开始截取,截取到指定位置的前一个,返回成一个新数组。
是否改变原数组:没有改变。
在这里插入图片描述
9.sort
参数:无。
返回值:数组原本的长度。
功能:进行字符的排序,逐位比较,得到结果就停止。
是否改变原数组:没有改变。
在这里插入图片描述
10.concat
参数:需要声明两个变量,里面可以放任意数据。
返回值:两个数组的长度相加。
功能:合并数组。
是否改变原数组:改变数组。
在这里插入图片描述
ES5是ECMAScript的第五版本,它新增了一些数组的方法,使代码运行更流畅, 减少了一些隐藏问题的发生, 使代码更规范,更高效,代表了js更好的发展方向。以下是ES5新增数组方法:
1.Indexof
参数:第一个值是要查找的数据,第二个值可以省略,表示从第几位开始查找。
功能:根据指定的数据,从左向右,查询在数组中出现的位置,如果不 存在指定的数据,返回-1。返回值:找到了返回索引,没找到返回为-1。
是否改变原数组:没有。
在这里插入图片描述
2.LastIndexof
参数:第一个是要查找的数据,第二个可以省略,表示从第几位开始查找。
功能:根据指定的数据,从右向左,查询在数组中出现的位置,如果不存在指定的数据,返回-1。
返回值:找到了返回索引,没找到返回为-1。
是否改变原数组:没有。
在这里插入图片描述
3.forEach
参数:回调函数。
功能:遍历数组。
返回值:undefined。
是否改变原数组:没有改变。
回调函数的返回值造成了什么影响:没有影响。
在这里插入图片描述
4.map
参数:回调函数。
功能:遍历数组,也可以修改数据,并返回到新数组中。
返回值:数组。数组内是每个回调函数的返回值。
是否改变原数组:没有。
回调函数的返回值造成了什么影响:被放在了map最终返回的数组内。
在这里插入图片描述
5.filter
参数:回调函数。
功能:过滤值。回调函数返回为true的数据组成新数组由filter返回。
返回值:数组。数组内是每个回调函数的返回值。
是否改变原数组:没有改变。
在这里插入图片描述
6.some
参数:回调函数。
功能:遍历数组中是否有符合条件的值,只要有符合,那么就是true,同时停止遍历数组。
返回值:数组。数组内是每个回调函数的返回值。
是否改变原数组:没有改变。
在这里插入图片描述
7.every
参数:回调函数。
功能: 遍历数组中是否有符合条件的值,结果必须全部都是true,才是true;如果有一个结果是false,那么就是false,同时停止遍历。
返回值:数组。数组内是每个回调函数的返回值。
是否改变原数组:没有改变。
在这里插入图片描述
8.reduce
功能:归并,可以将每次回调函数的返回值,传入下次回调函数的执行,作为下个回调函数的第一个参数存在。
(1)一个参数情况:
在这里插入图片描述
(2)两个参数情况:
在这里插入图片描述
9.reduceRight
功能:(与reduce类似)反向归并,从右向左遍历.从数组的最后一项开始,向前逐个遍历到第一位,迭代数组的所有项,然后构建一个最终返回的值。
在这里插入图片描述
以上是作者总结的关于javascript数组的方法,文中如果纰漏,错误,不合理,描述不清晰,不准确等问题,欢迎大家批评指正…

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值