数组的方法

92 阅读3分钟

数组的方法

把数组转换为字符串

  1. toString() 把数组转换为数组值(逗号分隔)的字符串
  2. join() 方法也可将所有数组元素结合为一个字符串,它的行为类似 toString(),但是您还可以规定分隔符。
var fruits = ["Banana", "Orange","Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits.join(" * "); 

结果

Banana * Orange * Apple * Mango

pop() 方法

从数组中删除最后一个元素,返回“被弹出”的值

push() 方法

(在数组结尾处)向数组添加一个新的元素,返回新数组的长度

shift() 方法

会删除首个数组元素,并把所有其他元素“位移”到更低的索引,返回被“位移出”的字符串

unshift() 方法

(在开头)向数组添加新元素,并“反向位移”旧元素,返回新数组的长度

splice() 方法

  1. 可用于向数组添加/替换/删除元素
  2. 第一个参数定义操作元素的位置
  3. 第二个参数定义应删除多少元素(0代表不删除元素)
  4. 其余参数定义要添加的新元素
  5. 返回新的数组

slice()方法

  1. 用于截取数组,可接受两个参数
  2. 该方法会从开始参数选取元素,直到结束参数(不包括)为止(若没有第二个参数,会切出数组的剩余部分)

concat() 方法

  1. 通过合并(连接)现有数组来创建一个新数组
  2. concat() 方法不会更改现有数组。它总是返回一个新数组。
  3. concat() 方法可以使用任意数量的数组参数

数组排序

sort() 方法

以字母顺序对数组进行排序

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a - b}); 

reverse() 方法

反转数组中的元素

Math.min(...[1,2,3])

求数组中的最小值

Math.max(...[1,2,3])

求数组中的最大值

数组的迭代

forEach() 方法

为每个数组元素调用一次函数(回调函数) 该函数接受 3 个参数(项目值、项目索引、数组本身)

Array.map()方法

该函数接受 3 个参数(项目值、项目索引、数组本身)

filter() 方法

创建一个包含通过测试的数组元素的新数组

Array.reduce()方法

var numbers1 = [45, 4, 9, 16, 25];
var sum = numbers1.reduce(myFunction);

function myFunction(total, value, index, array) {
  return total + value;
}

Array.reduceRight()

从右到左工作

Array.every()

every() 方法检查所有数组值是否通过测试(若所有都通过返回true,否则false)

Array.some()

some() 方法检查某些数组值是否通过了测试(若有一个通过返回true,若一个都没有返回false)

Array.indexOf()

  1. 两个参数(第一个参数:检索内容,第二个参数:可选。从哪里开始搜索。负值将从结尾开始的给定位置开始,并搜索到结尾)
  2. indexOf() 方法在数组中搜索元素值并返回其位置。
  3. 注释:第一个项目的位置是 0,第二个项目的位置是 1,以此类推。
  4. 如果未找到项目,Array.indexOf() 返回 -1。
  5. 如果项目多次出现,则返回第一次出现的位置。

Array.lastIndexOf()

Array.lastIndexOf() 与 Array.indexOf() 类似,但是从数组结尾开始搜索。

Array.find()

find() 方法返回通过测试函数的第一个数组元素的值。

Array.findIndex()

findIndex() 方法返回通过测试函数的第一个数组元素的索引。