数组有哪些原生方法?

867 阅读2分钟

1、数组和字符串的转换方法

  • toString() :将数组转换成⼀个字符串;
  • toLocalString() :把数组转换成局部字符串;
  • join() :将数组用连接符连接成一个字符串。

2、数组尾部操作的方法

  • pop() :删除数组最后一个数据;
  • push() :将数据追加到数组的末尾,可以传入多个参数。

3、数组首部操作的方法

  • shift() :删除数组第一个数据;
  • unshift() :将数据添加到数组的前端,可以传递多个参数。

4、重排序的方法

  • reverse() :将数组反转;
  • sort() :将数组进行排序,sort() 方法可以传入一个函数来进行比较,传入前后两个值,如果返回值为正数,则交换两个参数的位置。
// 小到大
数组.sort( function (a, b) {return a-b} )

// 大到小
数组.sort( function (a, b) {return b-a} )

5、数组连接的方法

concat() :将数组拼接在一起(返回的是拼接好的数组,不影响原数组)。

6、数组截取(浅拷贝)办法

slice( begin, [end] ) :用于截取数组中的一部分数据返回(不影响原数组)。

7、数组插入/删除/新增方法

splice( 开始索引,删除多少个,需要插入的数据 ) :删除数组中若干数据,并选择是否插入新数据(会改变原数组)。

8、查找特定项的索引的办法

  • indexOf() :从前面开始查找数据在数组中的索引位置;
  • lastIndexOf() :从后面开始查找数据在数组中的索引位置。

9、数组迭代方法

  • every() :判断数组是否每一项都满足条件;
  • some(): 判断数组是否有某一项满足条件;
  • filter() :过滤数组(返回过滤后的数组,不影响原数组);
  • map() :映射数组(返回映射后的数组,不影响原数组);
  • forEach() :遍历数组,无返回值。

10、数组归并方法

  • reduce() :接收一个函数将数组元素进行组合,按索引从低到高(从左到右)。
array.reduce(function(total, currentValue, currentIndex, arr), initialValue)
参数描述
function(total,currentValue, index,arr)必需。用于执行每个数组元素的函数。
initialValue可选。传递给函数的初始值
函数参数描述
total必需。初始值, 或者计算结束后的返回值。
currentValue必需。当前元素
currentIndex可选。当前元素的索引
arr可选。当前元素所属的数组对象。

示例:

var arr = [1, 2, 3, 4];
var sum = arr.reduce(function(prev, cur, index, arr) {
    return prev + cur;
})
console.log(arr, sum)   // 10

  • reduceRight() :功能和 reduce() 是一样的,不同的是 reduceRight() 从数组的末尾向前将数组中的数据做累加。