-
迭代
- Array.forEach()
可通过对每个数组元素执行函数进行遍历,但不会返回新数组,不改变原数组
- Array.map()
可通过对每个数组元素执行函数返回新的数组,不改变原数组,不会对没有值的数组元素(元素为undefined时返回NAN)执行map方法
- Array.every()
判断数组是否所有元素都符合判断条件,返回 boolean 类型
- Array.some()
判断数组是否有元素符合判断条件
- Array.filter()
返回数组中符合条件的元素
- Array.reduce()
对每个数组元素运行函数,以生成单个值(例如求和)
- Array.reduceRight()
从右边元素开始执行,参考 reduce()
- Array.indexOf()
查找某个元素在数组中的下标,不存在则返回- 1
- Array.find()
返回通过测试函数的第一个数组元素的值。
- Array.findIndex()
返回通过测试函数的第一个数组元素在数组中的位置。
-
排序
- sort()
以字母顺序对元素进行排序,原数组顺序也会发生改变,对数值排序不一定正确,对数值排序 -- arr.sort( (a,b) => { return a - b }
- Math.max.apply()
返回数组元素的最高值,只能比较纯数值型数组,有其他类型元素返回NAN
-
其他
-
不改变原数组
arr1.concat(arr2)
返回合并多个数组的新数组
slice()
array.slice(x)-截取下标x的元素,array.slice(x,y)-截取下标x到y的元素,不包括y;返回截取到的数组
toString()
转化为字符串,join() 方法也可将所有数组元素结合为一个字符串。它的行为类似 toString(),但是您还可以规定分隔符: 例如 arr.join('*') -- 以*分隔;
-
改变数组
- pop,push,shift,unshift
pop,shift返回弹出的元素,push,unshift返回数组长度
- delete
将指定元素变成undefined,长度不改变
- splice(x,y,z)
拼接,返回只有被删除的元素的数组,第一个参数为操作位置,第二个参数为删除的个数,第三个为插入的元素(可多个)