字符串,數值,布爾值都屬於離散值(scalar),如果某個變量是離散的,那麼任何時候它只有一個值。
如果想使用變量存儲一組值,就需要使用數組(array)。
數組是由多個名稱相同的樹值構成的集合,集合中每個數組都是數組的元素(element),可以使用變量team存儲團隊裡每個成員的名字。
在JavaScript中,數組使用關鍵字 Array聲明創建,同事還可以聲明變量的長度length。例如
代碼如下:
var aTeam = new Array(12);//聲明變量的長度
在無法預知數組的最終個數時,聲明數組可以不指定具體個數。例如:
代碼如下:
var aTeam = new Array();//數組最終個數未知的情況下,可以不聲明具體的個數
aTeam[0] = 1414;
aTeam[1] = "北京";
aTeam[2] = 0x4;
aTeam[3] = "i can";
aTeam[4] = "red";
aTeam[5] = "blue";
aTeam[6] = "orange";
另外,可以直接創建數組
代碼如下:
var aTeam = new Array("111","blue","red","beijing");
同字符串一樣,數組也可以使用length獲取和指定數組的長度。
代碼如下:
var aTeam = new Array("111","blue","red","beijing" );
document.write(aTeam[1]+"<br>");
document.write(aTeam.length +"<br>")
令注:能更深刻的理解數組。
代碼如下:
var aTeam = new Array("111","blue","red","beijing" );
aTeam[20] = "12415"
document.write(aTeam[20]+"<br>");
document.write(aTeam.length +"<br>")
另外, 數組還可以用[ ]來定義。中間使用逗號隔開。
代碼如下:
sTeam = [10,"5565","北京",33263,"red"]
document.write(sTeam[3]) //輸出 33263
數組可以使用toString()方便的轉化
代碼如下:
sTeam = [10,"5565","pking",33263,"red"]
document.write(sTeam.toString()) //
//輸出結果 10,5565,pking,33263,red
document.write(typeof(ss));
//輸出結果 string
如果數組轉化為字符串不想使用逗號連接 ,可使用join()方法。
代碼如下:
sTeam = [10,"5565","pking",33263,"red"]
ss = sTeam.join("-");
dd =sTeam.join("][")
//輸出結果 10,5565,pking,33263,red
document.write(ss);
document.write(dd);
//輸出 10-5565-pking-33263-red 10][5565][pking][33263][red
對於字符串,JavaScript使用split()轉化為數組
代碼如下:
var fruit = "apple,2151,orange";
sfruit = fruit.split(",")
document.write(sfruit); //輸出 apple,2151,orange
document.write(sfruit.join("-")); //輸出apple-2151-orange
接上例,javascript提供了reverse()方法使數組反轉。
代碼如下:
var fruit = "apple,2151,orange";
sfruit = fruit.split(",")
document.write(sfruit); //輸出 apple,2151,orange
document.write(sfruit.join("-")+"<br>"); //輸出apple-2151-orange
document.write(sfruit.reverse()+"<br>");輸出 orange,2151,apple
document.write(sfruit.reverse().toString()+"<br>");輸出apple,2151,orange
對於字符串反轉,javascript沒有直接的轉化方法,我們可以利用split()將字符串轉為數組,利用rerverse()進行反轉,再利用join進行連接,達到字符串反轉。
代碼如下:
var fruit = "2151,orange,apple";
var sfruit = "iambeijing123";
document.write(fruit.split(",").reverse()+"<br>");//2151,orange,apple
document.write(sfruit.split("").reverse().join("")+"<br>");//輸出iambeijing123
利用sort()可以使數組元素進行(字母順序)排序。
代碼如下:
fruit = ["orange2","2151","orange","apple"]
document.write(fruit.sort());//輸出結果2151,apple,orange,orange2
關於push()和pop()的用法
代碼如下:
sfruit = new Array();
sfruit.push("red");
sfruit.push("green");
sfruit.push("oragen");
sfruit.push("blue");
document.write(sfruit.length + sfruit.toString()+"<br>");
var wfruit = sfruit.pop();
document.write(wfruit+"<br>")
document.write(sfruit.toString())
如上,javascript將數組看成了一個堆棧,通過push()和pop()進行壓棧和出棧處理。