var array = ["1","2","3","4","5"];
// push 末尾添加元素 返回值为数组个数
var number = array.push("1");
console.log(number,array);
// pop 删除尾元素 返回删除元素
var object = array.pop();
console.log(object,array);
// unshift 前面添加元素 返回数组长度
var unshift = array.unshift("a");
console.log(unshift,array);
// shift 删除首个元素 返回被删除元素
var shift = array.shift()
console.log(shift,array);
// splice 删除指定元素(起始位置,元素个数,添加的元素,添加的元素,...) 并从起始位置添加元素 类似与替换元素
var splice = array.splice(1,2,"21","321","23132","2132")
console.log(splice,array);
// splice 从已有的数组中返回选定的元素 (起始位置,结束位置) 结果左闭右开[1,3)
var slice = array.slice(1,3);
console.log(slice,array);
// join 将数组元素已字符串方式拼接 join(拼接方式) 如:("-") 默认是 , 方式
var json = array.join("--");
console.log(json,array);
//concat 拼接元素 返回为一个新的数组
var concat = array.concat("item1", "item2");
console.log(concat,array);
// 逆序 结果与原数组
var list = array.reverse();
console.log(list === array);
console.log(list,array);
// foreach 遍历 没有返回值
array.forEach(function (item,index,array) {
console.log("forEach:"+item,index);
})
// 过滤返回新数组 filter(function(item,index,array){ 返回一个新的数组
// 返回值 为 bool
// })
var filter = array.filter(function (item,index,array) {
console.log("filter: "+item,index)
return false ;
});
console.log(filter,array);
// 遍历 返回值为新的数组 数组内部值为遍历每次的返回值
var map = array.map((item,index,array)=>{
console.log("map: "+item,index);
return "111";
})
console.log(map,array);
// 累计判断 reduce(item,nextItem,nextIndex,array) 其中item 第一次循环为首个元素,后续为上一次循环的返回值
var reduce = array.reduce((newValue,oldValue,index,result)=>{
console.log("reduce: "+newValue,oldValue,index,result);
return "("+newValue+"&"+oldValue+")";
})
console.log(reduce);