一、改变原数组
- push():尾增,返回新增元素后数组的长度
- unshift() :头增,返回删除元素后数组的长度
- pop() :尾删,返回被删除的项
- shift() :头删,返回被删除的项
- reverse():反转,反转后的新数组
- sort(fun(){}) :排序,排序后的新数组 function (a,b) {return a-b} 返回值为负值时,升序,正值降序
- splice(n,x,m):增、删、改
- (n,x,m)从下标为n的元素开始,删除x个元素,在此位置将m插入
- (n,0,m)从下标为n开始,不删除元素,直接插入m
- (n,x)从下标为n开始,删除x个元素
二、不改变原数组
- slice(a,b) :截取数组的一部分数据 可以用于浅拷贝
- join('-'): 返回用指定分隔符拼接成的字符串
- concat(arr1, arr2, str3...) :拼接 拼接后的新数组
- indexOf(item, star) : 从star下标开始查找,第一次出现item元素的索引,未找到返回-1
- lastIndexOf(item, star) : 最后一次出现的索引
- forEach(function(item, index, arr){}) :遍历
- includes(item,index) : 是否包含指定元素item,从index开始
- reduce(function (prev,item,index,arr) {},初始值)
- prev :一开始就是初始值 当第一次有了结果以后;这个值就是第一次的结果
- item : 这个表示的是数组中的每一项
- index : 这个表示的是每一项对应的索引
- arr : 这个表示的是原数组
var arr = [1, 2, 3, 4, 5]
var res = arr.reduce(function (prev, item) {
return prev *= item
}, 1)
console.log(res);//120
- filter(function (item,index,arr) {}
- item : 这个表示的是数组中的每一项
- index : 这个表示的是每一项对应的索引
- arr : 这个表示的是原数组
var arr = [1, 2, 3, 4, 5]
console.log('原始数组 : ', arr);
var res = arr.filter(function (item) {
return item > 2
})
console.log(res);
- every(function (item,index,arr) {}) 判断数组中是不是每一个都满足条件
- some(function (item,index,arr) {}) 判断数组中是不是有满足条件
- map(function (item,index,arr) {}) 用来映射
var arr = [1, 2, 3, 4, 5]
console.log('原始数组 : ', arr);
var res = arr.map(function (item) {
return item*1000
})
console.log(res);