1:数组检测方法
console.log(arr instanceof Array) console.log(Array.isArray(arr))
2:数组转换方法
arr.toString() arr.valueOf()
3:数组栈方法 pop push
pop()
var arr2 = [2,3];
var newarr = arr2.pop();
console.log(arr2) // 2
console.log(newarr) // 3
push()
var arr2 = [2,3];
var newarr = arr2.push(‘4‘);
console.log(arr2) // 返回修改后的数组
console.log(newarr); // 返回修改后的数组长度
4:数组的队列方法
var arr2 = [2,3];
var newarr = arr2.shift();
console.log(arr2) // 返回删除后的数组
console.log(newarr); //返回删除的项
unshift
var arr2 = [2,3];
var newarr = arr2.unshift(‘4‘);
console.log(arr2) // 返回修改后的数组
console.log(newarr); // 返回修改后的数组长度
5:重排序方法
reverse() // 返回倒序后的数组 sort() // 首先会调用数组的toString() 方法。 返回的都是排序后的值
6:操作方法 slice splice concat
concat
var arr2 = [2,3];
var newarr = arr2.concat(4);
console.log(arr2) // 不改变原数组
console.log(newarr); //返回新数组
slice 不改变原数组
var arr2 = [2,3,4,5,6];
var newarr = arr2.slice(1);
var newarr2 = arr2.slice(1,4);
var newarr3 = arr2.slice(-4,-1);
console.log(arr2) [2, 3, 4, 5, 6]
console.log(newarr); [3, 4, 5, 6]
console.log(newarr2); [3, 4, 5]
console.log(newarr3); [3, 4, 5]
solice
var arr2 = [2,3,4,5,6];
var newarr = arr2.splice(1) //没有第二个参数 则是获取1到结束 ,有第二个参数则是获取1到第二个参数的数组。原数组改变。第三个参数表示要插入的值
console.log(arr2); //[2]
console.log(newarr) // [3, 4, 5, 6]
7:位置方法 indexOf() lastIndexOf 两个参数,要查找的项和查找起点位置的索引。 第二个参数可选
8:迭代方法 every filter map some forEach
every: 对数组中的每一项运行函数,每一项都返回true则return true
filter: 返回过滤后的返回值数组
forEach: 对每一项进行操作,无返回值
map:对每一项进行操作,返回操作后的数组。
9:归并方法 reduce,reduceRight
四个参数 prev cur index arr 前一个值,当前值,项的索引,数组
var arr = [1,2,3,4];
var val = arr.reduce(function (prev,cur,index,arr) {
// body...
// 首次进来 prev == 1 cur == 2
console.log(prev);
console.log(cur)
return prev + cur
})
原文:http://www.cnblogs.com/mr-pz/p/7769016.html