JavaScript 数组常用操作

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

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

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

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

2.数组操作
2.1 push() 数组末尾添加元素,返回数组最新长度

将字符串"userId001"放入数组末尾
checkboxList.push("userId001");

一次添加两个元素,"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);












你可能感兴趣的:(JavaScript,java)