1、reduce
arr.reduce(function(pre, cur, index, arr) {
......原来的元素
}, initial); //initial 是初始值
如果有初始值,那么pre = initial, cur = 第一个元素的值
如果没有初始值,那么pre = 第一个元素的值, cur = 第二个元素的值
2、filter
不修改原始元素的值 返回值是所有为true的所有值的新数组
否则所有元素返回false,数组长度为0
arr.filter(function(value, index, arr){
......
} [, thisArg]);
//callbackfn函数中为其引用this关键字的对象。如果省略thisArg,则undefined将用作this值
value原始值 index索引 arr数组对象
3、splice 删除数组的元素 直接在原数组修改
slice 返回一部分数组 不修改原数组
arr.splice(start, num[, item1, item2, item3]);
arr必须的
start 开始的index 必须
num 删除的数组元素的个数 必须
item1 item2 item3 item4之类的就是删除元素之后所替换的元素
arr.slice(start, [end]);
arr 必须
start 必须 开始的index
end 可选 结束的index 注:end、start为负数 则看成 start + length 或者 end + length
4、fliter
var new_array = arr.filter(callback[,thisArg])
callback(element, index, array) thisArg执行callback时用的this值