常用方法
- 检测是否是数组:
Array.isArray(array); //array是数组变量,返回true/false
- 使用不同分隔符构建字符串:
array.join("||"); //将输出以||为分隔的字符串
栈方法:
1
2array.push(···); //向array中推如任意项
var temp = array.pop(); //取出array中的最后一项并删除队列方法:
1
2
3
4array.push(···); //与shift()构成队列
array.shift(); //取出array中的第一项并删除
array.unshift(···); //向array的前端推进任意项并返回新数组长度
array.pop(); //与unshift()构成队列
重排序:
1
2
3
4
5
6
7
8
9
10
11
12array.reverse() //反转array,第一项变成最后一项,以此类推;
array.sort(function(value1, value2) {//对array进行排序,可选择传入比较函数
if(value1 > value2) {
reutrn 1;
}
else if(value1 < value2) {
return 1;
}
else {
return 0;
}
})操作方法:
1
2
3
4var newArray = array.concat(···); //基于array中的元素向newArray中写入任意多元素,可选择是否传参
var newArray = array.slice(arg0, arg1); //无参数时复制array到newArray;一个参数时从array复制指定位置到最后一项;两个参数时从array复制指定开始位置到指定结束位置
var newArray = array.splice(arg0, arg1); //从array中删除arg0开始的arg1项
var newArray = array.splice(arg0, arg1, ···); //从array中arg0开始删除arg1项,并插入任意多项,newArray是空数组位置方法:
1
2var index = array.indexOf(arg0, arg1); //从arg0(可选参数)开始查找arg1,返回索引
var index = array.lastIndex(arg0, arg1); //从array最后arg0(可选参数)位置开始查找arg1迭代方法:共五个,都接受2个参数,第一个参数是每一项都要运行的函数,第二个参数(可选)是运行该函数的作用域对象,运行的函数接收三个参数当前项,当前项下标,数组对象,都不会修改数组中的值
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15var bool = array.every(function(item, index, arr) {//对array中每项运行该函数,若都返回true,则最终结果为true
return (item > 2);
})
var bool = array.some(function(item, index, arr) {//对array中每项运行该函数,若有一项返回true,则结果为true
return (item > 2);
})
var newArray = array.filter(function(item, index, arr){//对array中每项运行该函数,返回结果为true的项组成的新数组
return (item > 2);
})
var newArray = array.map(function(item, index, arr){//对array中每项运行该函数,返回每次经过该函数的元素组成的新数组
return item * 2;
})
array.forEach(functrion(item, index, arr){//对array中每项运行该函数,无返回值
newArray[index] = item;//某些操作
})归并方法:共2个,这两个方法接收两个参数,第一个参数是每一项都要运行的函数,第二个参数(可选)为归并的初始值,函数接收4个参数:前一个值,当前值,数组下标,原数组;第一次迭代发生在数组第二项,故第一个参数是数组第一项,第二个参数是数组第二项
1
2
3
4
5
6var sum = array.reduce(function(prev, cur, index, arr) {//执行求和
return prev + cur;
})
var sum = array.reduceRight(function(prev, cur, index, arr) {//从最右方开始执行求和
return prev + cur;
})