JavaScript 数组常用操作

本人第一篇文章,现在要开始养成写技术博客的习惯,并且保证平均每周至少一篇。对于代码相关的能测试的一定要进行测试。

[b]1.创建数组[/b]
只是声明了数组,并不包含具体数据。
var checkboxList = new Array();

创建数组并指定长度,这个长度5是可以变的,可以自动增长。
var checkboxList = new Array(5);

创建数组,并初始化了三个元素。
var checkboxList = new Array("1111","2222","3333");

[b]2.数组操作[/b]
[b]2.1 push() 数组末尾添加元素,返回数组最新长度
[/b]
将字符串"userId001"放入数组末尾
checkboxList.push("userId001");

一次添加两个元素,"AAAA"与"BBBB"

checkboxList.push("AAAA","BBBB");

[b]2.2 unshift() 数组开头,插入元素,原有元素后移[/b]
在数组开头插入两个元素。
(有资料说返回值是数组最新长度,不过我在IE6测返回是"undefined")
checkboxList.unshift("AAAA","BBBB");

[b]2.3 pop() 移出数组末尾的一个元素,并返回该元素。[/b]
代码:
checkboxList.pop();

[b]2.3 shift() 移出数组开头的一个元素,并返回该元素[/b]
代码:
checkboxList.shift()

[b]2.4 splice() 插入(替换)或者移除多个元素[/b]
[b]移除示例:[/b]
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);

[b]插入(替换)示例:[/b]
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);

[b]2.5 reverse() 数组元素顺序反转[/b]

checkboxList.reverse();

[b]2.6 sort() 对数组元素按自然顺序排序[/b]

checkboxList.sort();

[b]2.7 concat() 拷贝另一个数组,生成新的数组,并返回 [/b]
allList中的元素为checkboxList与radioList中的元素的合集

var checkboxList = new Array("1111","2222");
var radioList = new Array("AAAA","BBBB");
var allList = checkboxList.concat(radioList);

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

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

var checkboxList = new Array("1111","2222","3333");
var tempArray = checkboxList.slice(1);

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

可以于高效字符串相加。比直接字符串相加效率高很多。
代码示例:

var checkboxList = new Array("1111","2222","3333","4444");
var strData = checkboxList.join("|");
alert(strData);



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

var checkboxList = new Array("1111","2222","3333","4444");
alert(checkboxList.length);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值