处理数组的方法很多,javascript splice()算是最强大的了,它非常灵活可以用于插入、删除或替换数组的元素。下面来一一介绍!
1.删除-用于删除元素, 两个参数 ,第一个参数(要删除第一项的位置),第二个参数(要删除的项数)3.替换-向数组指定位置插入任意项元素,同时删除任意数量的项,三个以上参数。第一个参数(起始位置),第二个参数(删除的项数),第三个以后的参数为插入任意数量的项
代码如下:
<span style="color:#333333;"><script type="text/javascript"> var lang = ["php","java","javascript"]; </span><span style="color:#ff0000;">//删除 </span><span style="color:#333333;"> var removed = lang.splice(1,1); alert(lang); //php,javascript alert(removed); //java ,返回删除的项 </span><span style="color:#ff0000;">//插入 </span><span style="color:#333333;"> var insert = lang.splice(0,0,"asp"); //从第0个位置开始插入 alert(insert); //返回空数组 alert(lang); //asp,php,javascript </span><span style="color:#ff0000;">//替换 </span><span style="color:#333333;"> var replace = lang.splice(1,1,"c#","ruby"); //删除一项,插入两项 alert(lang); //asp,c#,ruby,javascript alert(replace); //php,返回删除的项 </script></span>
删除原数组最后一项,并返回删除元素的值;如果数组为空则返回undefined
var a = [1,2,3,4,5];
var b = a.pop();
结果 a:[1,2,3,4] b:5
将参数添加到原数组末尾,并返回数组的长度
var a = [1,2,3,4,5];
var b = a.push(6,7);
结果a:[1,2,3,4,5,6,7] b:7
返回一个新数组,是将参数(一个数值或一个数组)添加到原数组中构成的
var a = [1,2,3,4,5];
var b = [6,7,8];
var c = a.concat(6,7);
var d = a.concat(b);
alert(c);
alert(d);
结果 a:[1,2,3,4,5] b:[1,2,3,4,5,6,7]
将数组反序
var a = [1,2,3,4,5];
var b = a.reverse();
结果 a:[5,4,3,2,1] b:[5,4,3,2,1]
按指定的参数对数组进行排序
var a = [1,2,3,4,5];
var b = a.sort();
结果 a:[1,2,3,4,5] b:[1,2,3,4,5]
切割,返回从原数组中指定开始下标到结束下标之间的项组成的新数组
var a = [1,2,3,4,5];
var b = a.slice(2,5);
结果 a:[1,2,3,4,5] b:[3,4,5]
与之对应:字符串的切割用substring
join(separator)
将数组的元素组起一个字符串,以separator为分隔符,省略的话则用默认用逗号为分隔符
var a = [1,2,3,4,5];
var b = a.join("|");
结果 a:[1,2,3,4,5] b:"1|2|3|4|5"
var a = [1,2,3,4,5];
if(a.contains(2)){
//to do
}
contains不支持,兼容IE用indexOf
if(a.indexOf(2)!=-1){
//to do
}