Array对象
用于创建数组,元素的索引是从0开始,最大等于数组长度减1。
1. 创建数组
var objArray=new Array();
var objArray=new Array(10);
var objArray=new Array("a","b","c");
在JavaScript1.2版本可以使用“[]”来创造一个数组
var objArray=[];
var objArray=[2];
var objArray=["a","b","c"];
数组中元素是没有类型的,例如:var objArray=[new Date(),"abc",1234];
2. 多维数组
多维数组并不是JavaScript中的一种内部机制
例:定义一个4*6的二维数组
var arr=new Array(4);
for(var i=0;i<4;i++){
arr[i]=new Array(6);
}
就可以用arr[i][j]的形式来访问一个二维数组的元素.
例:定义一个3*3的二维数组
var arr=[[1,2,3],[4,5,6],[7,8,9]];
3. length属性
例:冒泡排序
[32,55,78,43,78,10,45,20,9,89]排序后为 <script language="javascript" type="text/javascript"> </script>89 78 78 55 45 43 32 20 10 9
注意:JavaScript数组的length属性是可变的。
例:数组[ <script language="javascript" type="text/javascript"> </script>89 78 78 55 45 43 32 20 10 9 ]
arr.length=10
arr.length=12
arr[8]=10
arr.length=5
arr[8]=undefined
arr.length=10
arr[8]=undefined
Array对象的方法
| |
方法
|
描述
|
toString() | 将数组对象转换为字符串.以逗号分隔.例: [1,2,3,4].toString()返回"1,2,3,4" ["a","b","c",[1,2,3,4]].toString()返回"a,b,c,1,2,3,4" |
concact([item1,......]) | 将参数列表连接到数组的后面形成一个新的数组并返回,原数组不受影响.例: var arr=["a","b","c"]; arr.concact("d","e","f"); 返回["a","b","c","d","e","f"] |
join(separator) | 以separator指定的字符作为分隔符,将数组对象转换为字符串. 当separator为逗号时,作用和toString()相同. |
pop() | 返回数组最后一个元素的值,并将length属性减1,即返回后丢失最后一个元素. |
push([value1,......]) | 将参数添加到数组的结尾,例: [1,2,3,4].push("a","b")得到[1,2,3,4,"a","b"] |
reverse() | 将一个数组的元素反转排列,例: [1,2,3].reverse()得到[3,2,1],原数组也改变. |
shift() | 返回数组的第一个元素,并移除. |
slice(start,end) | 返回索引从start开始(包括start),到end结束(不包括end)数组的一个子集. 原数组不受影响.例: [1,2,3,4,5,6].slice(1,4)得到[2,3,4] |
sort(comparefn) | 根据comparefn定义的大小比较函数,对一个数组进行排序. 函数comparefn必须接收两个参数element1和element2,返回一个正数或负数或0. function emp(e1,e2){ return e1-e2; } [3,4,2,7].sort(cmp)得到[2,3,4,7] |
splice(start,delcount [,item1,......]) | 用于完成数组元素的删除、取代和插入操作。start表示进行操作的索引位置, delcount指从start开始要删除的元素个数(包括start) var arr=[0,1,2,3,4,5,6]; arr.splice(1,1); document.write(arr);//"0,2,3,4,5,6" arr=[0,1,2,3,4,5,6]; arr.splice(0,0,"a","b"); document.write(arr);//"a,b,0,1,2,3,4,5,6" arr=[0,1,2,3,4,5,6]; arr.splice(3,2,"c","d"); document.write(arr);//"0,1,2,c,d,5,6" |
unshift(item1,......) | 将参数列表插入到数组的开头.例: [1,2,3,4].unshift("a","b")得到["a","b",1,2,3,4] |