Javascript 中的 Array 是可以变长,变类型的。比如 Array中第一个元素是整型,第二个是 boolean型。
<!DOCTYPE html> <html> <head> <title>js4.html</title> </head> <body> <script type="text/javascript"> var fruits = new Array("apple", "鸭梨", "tomato"); for (var i in fruits) { document.writeln(fruits[i]+"<br>"); } </script> </body> </html>
结果:
apple
鸭梨
tomato
==============
其实 javascript 中的 array 定义有好几种。
var
fruit = new Array(3);
fruit[0] = "apple";
fruit[1] = "梨子";
fruit[2] = "桃子";
fruit = new Array("苹果", "梨子", "桃子");
下面这种方式是推荐的:
fruit = ["苹果", "梨子", "桃子"];
还有, JS 可以先定义一个数组但是不指定长度。以后再添加元素。
<body> <script type="text/javascript"> var fruit = new Array(); fruit.push("苹果"); fruit.push("桃子"); fruit.push("萝卜"); fruit.push("西红柿"); for (var i in fruit) { document.writeln(fruit[i]+"<br>"); } </script> </body>
JS 的 Array有些方法, join(), reverse(), toString()等。jion()用于把 array 中的字符串连接起来,并默认用 ","分隔,也可以指定用什么符号分隔。
看下面:
<!DOCTYPE html> <html> <head> <title>js5.html</title> </head> <body> <script type="text/javascript"> var fruit = ["苹果", "桃子", "萝卜", "西红柿"]; with (document) { write("<ul>"); write("<li>" + fruit.join() + "</li>"); write("<li>" + fruit.join(";") + "</li>"); write("<li>" + fruit.toString() + "</li>"); write("<li>" + fruit.reverse() + "</li>"); write("<li>" + fruit.join()+"</li>"); //上面两行可以用 fruit.reverse().join()代替 write("<li>" + fruit.valueOf()+"</li>"); write("</ul>"); } </script> </body> </html>
结果:
- 苹果,桃子,萝卜,西红柿
- 苹果;桃子;萝卜;西红柿
- 苹果,桃子,萝卜,西红柿
- 西红柿,萝卜,桃子,苹果
- 西红柿,萝卜,桃子,苹果
- 西红柿,萝卜,桃子,苹果
二位数组
<!DOCTYPE html> <html> <head> <title>js5.html</title> </head> <body> <script type="text/javascript"> var fruit = new Array(3); fruit[0] = new Array ("苹果", 1); fruit[1] = new Array ("桃", 2); fruit[2] = new Array ("萝卜", 3); for (var i = 0; i< fruit.length; i++) { for (var j = 0; j < fruit[i].length; j++ ) { document.write("fruit["+i+"]["+j+"]=" + fruit[i][j]+"<br>"); } document.write("<br>"); } </script> </body> </html>
结果:
fruit[0][0]=苹果
fruit[0][1]=1
fruit[1][0]=桃
fruit[1][1]=2
fruit[2][0]=萝卜
fruit[2][1]=3