JavaScript中常用数组方法
1、concat()
连接不同的数组,组成一个新的数组:
var a = [1,2,3];
var b = [4,5,6];
var c = a.concat(b);//[1,2,3,4,5,6]返回一个新的数组,不改变原数组
连接数值:
var a = [1,2,3];
var b = a.concat(4, 5, 6);//[1,2,3,4,5,6]返回一个新的数组,不改变原数组
连接数值和数组:
var a = [1,2,3];
var b = 4;
var c = [5,6];
var d = a.concat(b, c);//[1,2,3,4,5,6]返回一个新的数组,不改变原数组
2、join()
使用指定字符连接数组各项,返回一个字符串,原数组不变
var a = ['hello','world',undefined, null];
var b = a.join(‘+’);//"hello+world",undefined和null自动过滤掉
3、push()
在数组的末尾加入一项,返回数组的长度,改变原数组
var a = [1,2,3];
var b = a.push(4);//c = 4,原数组为[1,2,3,4]
var c = a.push([5,6]);//c = 5,原数组为[1,2,3,4,[5,6]]
4、pop()
从数组的末尾删除一项,返回被删除的项,改变原数组
var a = [1,2,3];
a.pop();//return 3,原数组为[1,2]
5、arrayObject.unshift(newelement1,newelement2,....,newelementX)
在数组的起始位置处插入项,返回数组的长度,改变原数组
var a = [2,3,4];
a.unshift(0,1);//return 5,原数组为[0,1,2,3,4]
a.unshift([a,b]);/return 5,原数组为[[a,b],1,2,3,4]
6、shift()
在数组的起始位置处删除项,返回删除的项,改变原数组
var a = [1,2,3];
a.shift();//return 1,原数组为[2,3]
var b =[[1,2],3,4];
b.shift();//return [1,2],原数组为[3,4]
7、reverse()
反转数组,返回反转后的数组,改变原数组
var a = [1,2,3];
a.reverse();//return [3,2,1],原数组为[3,2,1]
var a = [1,2,[3,4]];
a.reverse();//return [[3,4],2,1],原数组为[[3,4],2,1]
8、sort()
将数组按ASCII排序,返回排序后的数组,改变原数组
var a=[1,2,3,12,13];
a.sort() //返回 [1,12,13,2,3]
如果按照正常逻辑排序 :
a.sort(function(a,b){
return a-b;
}) //[1,2,3,12,13]
9、slice(index[, end])
根据参数指定的索引位置截取数组,返回截取后的新数组,原数组不变
var a = [1,2,3,4,5,6];
a.slice(3, 4);// return [4],原数组为[1,2,3,4,5,6]
a.slice(3);// return [4,5,6],原数组为[1,2,3,4,5,6]
10、splice(index, howmany, ele1, ele2, …)
删除数组中指定索引位置的项,然后从该位置处插入指定的项,返回删除的值,改变原数组
var a = [1,2,3,4,5,6];
a.splice(2,2,0,0);//return 3,4,原数组的为[1,2,0,0,5,6]