JavaScript Array api

数组包含以下几个静态方法:

  • Array.from():根据一个类数组或者可迭代的对象来创建一个新的数组。
  • Array.isArray():判断所传入的值是否为数组。
  • Array.of():根据所传入的参数来创建一个数组。

以下为数组的实例方法:

数组合并

获取 Array Iterator 对象

  • entries():返回一个包含 key/value的 Array Iterator 对象。
  • keys():返回一个包含所有数组索引的 Keys 的 Array Iterator 对象。
  • values():返回包含数组所有索引对应的值的 Array Iterator 对象。

迭代器函数

  • every:对数组中的每一项运行给定函数,如果该函数对每一项都返回 true ,则返回 true
  • some:对数组中的每一项运行给定函数,如果任一项返回true,则返回true。
  • forEach:对数组中每一项运行给定函数。
  • map:对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组。
  • filter:对数组中每一项运行给定函数,返回该函数返回 true 的项组成的数组。
  • reduce:这个函数会返回一个将被叠加到累加器的值, reduce 方法停止执行后会返回这个累加器。
  • reduceRight:与 reduce 的作用类似,但遍历方向相反。

搜索

  • indexOf:返回第一个与给定参数相等的数组元素的索引,没有找到则返回 -1。
  • lastIndexOf:返回在数组中搜索到的给定参数相等的元素的索引里最大的值。
  • find:接受一个回调,返回第一个满足条件的值。
  • findIndex:接受一个回调,返回第一个满足条件的值的索引。如果没有找到满足条件的值,则返回 -1
  • includes:如果数组里存在某个元素,则返回 true,否则返回 false。

排序

  • reverse:颠倒数组中元素的顺序,原先第一个元素现在变成最后一个。同样原先的最后一个元素变成了现在的第一个。
  • sort:按照字母顺序对数组排序,支持传入指定排序方法的函数作为参数。

输出数组为字符串

  • join:将所有的数组元素连成一个字符串。
  • toString:返回一个字符串,该字符串代表了指定数组与其元素。
  • toLocaleString:返回一个代表数组的字符串,字符串的分隔符由本地语言所决定。
  • valueOf:和 toString 类似,将数组作为字符串返回。

获取子数组

  • slice:传入索引值,将数组里对应索引范围内的元素作为新数组返回。

具有副作用的方法

具有副作用的方法指的是操作方法将会更改原来的数组。

  • copyWidthin:将数组中的某一部分复制到该数组的指定位置,并且在不改变数组长度的情况下返回该数组。
  • fill:使用指定值填充数据。

添加元素

  • push:将数值插入到数组的末尾。
  • unshift:直接把数值插入数组的首位。

删除元素

  • pop:删除数组中最后一个元素。
  • shift:删除数组中第一个元素。

任意位置添加或删除元素

  • splice:在任意位置添加或删除元素。