javascript数组操作实例总结

发布时间:2020-11-27编辑:脚本学堂
介绍下javascript数组操作的相关知识与实例,包括创建数组、数组元素的添加与移除、数组排序、数组元素的连接等操作。有需要的朋友,参考下吧。

1,创建数组
声明数组,但不包含数据。
 

复制代码 代码示例:
var checkboxlist = new array();

创建数组并指定长度,长度自己指定,该长度可以自动增长。
 

复制代码 代码示例:
var checkboxlist = new array(5);

创建数组,并初始化三个元素。
 

复制代码 代码示例:
var checkboxlist = new array("1111","2222","3333");

2.数组操作
2.1 push() 数组末尾添加元素,返回数组最新长度
将字符串"jbxue123"放入数组末尾
 

复制代码 代码示例:
checkboxlist.push("jbxue123");

一次添加两个元素,"aaaa"与"bbbb"
 

复制代码 代码示例:
checkboxlist.push("aaaa","bbbb");

2.2 unshift() 数组开头,插入元素,原有元素后移
在数组开头插入两个元素。
(在ie6测试返回"undefined")
 

复制代码 代码示例:
checkboxlist.unshift("aaaa","bbbb");

2.3 pop() 移出数组末尾的一个元素,并返回该元素。
 

复制代码 代码示例:
checkboxlist.pop();

2.3 shift() 移出数组开头的一个元素,并返回该元素
 

复制代码 代码示例:
checkboxlist.shift()

2.4 splice() 插入(替换)或者移除多个元素
移除示例:
 

复制代码 代码示例:
splice(delindex,delcount);
delindex:开始移除的位置,也就是数组的下标,从0开始。
delcount:移除元素的个数。

从数组的第一个元素开始,移除2个元素。
 

复制代码 代码示例:
checkboxlist.splice(0,2);

如:在执行完checkboxlist.splice(1,2)后,数组由原来的4个元素变成了只有"1111","4444"两个元素。
 

复制代码 代码示例:
var checkboxlist = new array();
checkboxlist.push("1111");
checkboxlist.push("2222");
checkboxlist.push("3333");
checkboxlist.push("4444");//从数组的第二个元素开始,移除2个元素。
checkboxlist.splice(1,2);
alert(checkboxlist);

插入(替换)示例:
 

splice(addindex,replacecount,elememt...);
addindex:插入(替换)起始位置,也就是数组的下标,从0开始。
replacecount:需要替换元素的个数。
elememt...:新的元素,可以是一个或者多个。

当replacecount小于等于0时,只进行添加。
如:在checkboxlist数组的第1个元素("1111")后插入"aaaa","bbbb"两个元素。 
 

复制代码 代码示例:
var checkboxlist = new array("1111","2222","3333","4444","5555");
checkboxlist.splice(1,0,"aaaa","bbbb");
alert(checkboxlist);

当replacecount大于0时,会元素会进行替换。
如:将checkboxlist数组的第1个元素("1111")后的一个元素(也就是"2222")替换成"aaaa","bbbb"。

以下代码中的checkboxlist最新值为:"1111","aaaa","bbbb","3333","4444","5555"。
 

复制代码 代码示例:
var checkboxlist = new array("1111","2222","3333","4444","5555");
checkboxlist.splice(1,1,"aaaa","bbbb");
alert(checkboxlist);

如果replacecount参数的值大于数组的长度,那将会替换掉addindex参数开始的所有元素。
执行完后checkboxlist的元素变为:"1111","aaaa","bbbb"。
 

复制代码 代码示例:
var checkboxlist = new array("1111","2222","3333","4444","5555");
checkboxlist.splice(1,9,"aaaa","bbbb");
alert(checkboxlist);

2.5 reverse() 数组元素顺序反转
 

复制代码 代码示例:
checkboxlist.reverse();

2.6 sort() 对数组元素按自然顺序排序
 

复制代码 代码示例:
checkboxlist.sort();

2.7 concat() 拷贝另一个数组,生成新的数组,并返回
alllist中的元素为checkboxlist与radiolist中的元素的合集。
 

复制代码 代码示例:
var checkboxlist = new array("1111","2222");
var radiolist = new array("aaaa","bbbb");
var alllist = checkboxlist.concat(radiolist);

2.8 slice() 拷贝指定序号后的元素,生成新的数组,并返回
slice(index)
index:拷贝开始位置,也就是数组的下标,从0开始。
当index大于数组元素个数时,返回空数组

拷贝checkboxlist第一个元素后的所有元素到新的temparray 数组,原checkboxlist不发生变化。
 

复制代码 代码示例:
var checkboxlist = new array("1111","2222","3333");
var temparray = checkboxlist.slice(1);

2.9 join() 字符串操作
join(separator);
separator:添加的分隔符,可以为""空字符串。

可以于高效字符串相加。比直接字符串相加效率高很多。
 

复制代码 代码示例:
var checkboxlist = new array("1111","2222","3333","4444");
var strdata = checkboxlist.join("|");
alert(strdata);

2.10 length 属性
length 返回数组长度,也就是元素个数。
 

复制代码 代码示例:
var checkboxlist = new array("1111","2222","3333","4444");
alert(checkboxlist.length);