數組的創建
第一種:
1 var colors = new Array();
2 var colors = new Array(20);//創建包含20項的數組
3 var colors = new Array("Greg");//創建包含1項,即字符串"Greg"的數組
4 var colors = new Array("red","blue","green"); //創建包含3項第二種:
1 var colors = ["red","blue","green"];
2 var colors = [];//創建一個空數組註意:數組的索引是從0開始的
1. length屬性
length屬性中保存數組的項數,如:
1 var colors = ["red","blue","green"];
2 alert(colors.length); //3 length屬性不是隻讀的,可以利用length屬性在數組的末尾移除項,或者添加新的項,如:
1 var colors = ["red","blue","green"];
2 colors.length = 2;
3 alert(colors); //red,blue
4 colors[colors.length] = "black";
5 alert(colors); //red,blue,black2.join()方法,連接數組中的項
1 var colors = ["red","blue","green"];
2 alert(colors.join(",")); //red,blue,green
3 alert(colors.join("||")); //red||blue||green3.數組的棧方法:push()和pop()
push()方法 可以接受任意數量的參數把它們逐個添加的數組的末尾,並返回修改後數組的長度
pop()方法 從數組末尾移除最後一項,減少數組的length值,返回移除的項
1 var colors = new Arrary(); //創建一個數組
2 var count = colors.push("red","green"); //推入兩項到數組末尾
3 alert(count); //2
4 count = colors.push("black"); //推入一項到數組末尾
5 alert(count); //3
6 var item = colors.pop(); //移除最後一項並返回該值
7 alert(item); //"black"
8 alert(count); //2
4.數組的隊列方法:push()和shift()、unshift()
push()方法同上
shift()方法 移除數組中的第一項並返回該項,數組長度減1
unshift()方法 在數組前端添加任意項,並返回新數組的長度
var colors = new Arrary(); //創建一個數組
var count = colors.push("red","green"); //推入兩項到數組末尾
alert(count); //2
count = colors.push("black"); //推入一項到數組末尾
alert(count); //3
var item = colors.shift(); //移除第一項並返回該值
alert(item); //"red"
alert(colors); //green,black
count = colors.unshift("blue"); //推入一項到數組前端
alert(count); //3
alert(colors); //blue,green,black
5.重排序方法:reverse()和sort()
reverse()方法 反轉數組項的順序 www.aiwalls.com
sort()方法 默認按字符串大小升序排列數組項,可以接受一個比較大小的函數作為參數
1 var values = [1,2,3,4,5];
2 values.reverse();
3 alert(values); //5,4,3,2,1
1 //升序排序函數
2 function compare(value1,value2) {
3 if (value1 < value2) {
4 return -1; //降序改為1
5 } else if (value1 > value2) {
6 return 1; //降序改為-1
7 } else {
8 return 0;
9 }
10 }
1 //數組升序排列
2 var values = [0,1,5,15,20,10];
3 values.sort(compare);
4 alert(values);//0,1,5,10,15,201 //對於數值型可以用這個函數,升序
2 function compare(value1,value2) {
3 return value2 – value1;
4 }6.數組的一些方法:concat()方法、slice()方法和splice()方法
concat()方法 將參數添加到原數組末尾,返回新的數組,原數組不變
slice()方法 返回數組中的項,一個參數時返回指定位置到數組末尾所有的項,兩個參數時返回起始位置和結束位置之間的項(不包括結束位置),原數組不變
splice()方法 向數組中插入,刪除,或替換數組中的項,返回刪除的項(沒有刪除時返回空數組),原數組改變
1 //concat()方法
2 var colors = ["red","green","blue"];
3 var colors2 = colors.concat("yellow",["black","brown"]);
4 alert(colors); //red,green,blue
5 alert(colors2); //red,green,blue,yellow,black,brown
1 //slice()方法
2 var colors = ["red","green","blue","yellow","black"];
3 var colors2 = colors.slice(1); //一個參數時返回指定位置到數組末尾所有的項
4 var colors3 = colors.slice(1,4); //兩個參數時返回起始位置和結束位置之間的項(不包括結束位置)
5 alert(colors2); //green,blue,yellow,black
6 alert(colors3); //green,,blue,yellow
1 //splice()方法
2 //插入項,插入時指定3個參數:起始位置、0(要刪除的項)、要插入的項
3 var colors = ["red","green","blue"];
4 var inserted = colors.splice(1,0,"yellow","orange"); //從位置1開始插入兩項
5 alert(colors); //red,yellow,orange,green,blue
6 alert(inserted); //空數組
7
8 //替換項,刪除時指定3個參數:起始位置、要刪除的項、要插入的任意項
9 var colors = ["red","green","blue"];
10 var replaced = colors.splice(1,1,"black","brown"); //刪除一項,插入兩項
11 alert(colors); //red,black,browm,blue
12 alert(replaced); //green
摘自 晴天漫步