数组属于JavaScript中的复合数据类型。
JavaScript中一个数组可以存储JavaScript支持的任何数据类型,比如可以用一个数组来处理用户从中选择的项目列表,或者一组图像坐标,或者一组图片的引用。
- 创建Array对象并初始化
1 var preInitArray = new Array(“First item”,”Second item”,”Third item”);
2 var preDeterminedSizeArray = new Array(3);
3 var anArray = new Array();
anArray[0] = “anItem”;
anArray[1] = “anotherItem”;
4 var myArray = [1,2,3];
5 var yourArray = [“red”,”green”,”blue”];
- 数组中的下标
1 使用索引数存储数据项方便循环整个数组
2 也可以使用关键字来访问数据元素,在如下情况下非常有效,如可以给数据分配有用的标签,或者存储一些只用在上下文中才有效的实体的地方,如一个图像坐标列表
可是,如果它们已经使用关键字被设置了,那么不能使用索引数来访问实体(在其他语言如PHP中可以)。
<script type=”text/javascript”>
var anArray = new Array();
anArray[“name”] = “Tonygx”;
</script>
3 使用变量作为索引
<script type=”text/javascript”>
var anArray = new Array();
var itemIndex = 0;
var itemKeyword = “CostOfApple”;
anArray[itemIndex] = “Fruit”;
anArray[itemKeyword] = 0.78;
</script>
数组应用1 :每次刷新页面随机选取一个广告横幅显示出来
<html>
<body>
<script type="text/javascript">
var bannerImages = new Array();
bannerImages[0] = "Banner1.jpg";
bannerImages[1] = "Banner2.jpg";
bannerImages[2] = "Banner3.jpg";
bannerImages[3] = "Banner4.jpg";
var randomImageIndex = Math.round(Math.random()*3);
document.write("<img alt=\"\" src=\""+bannerImages[randomImageIndex ]
+"\">");
</script>
</body>
</html>
数组对象的属性和方法
1 length属性:如果想添加另外的元素,知道数组length很有用
2 截取数组的一段 slice(from,to)方法,譬如想要一个使用URL传递的信息片段的时候
注意:方法包含两个参数,为了访问一个总共包含5个值的数组中的第2,3,4个值时(对应数组下标为 1,2,3),参数中用索引1和4,后一个索引4对应的数组中的元素不会包含在截取后的段中
后一个索引
例如:
<html>
<body>
<script type="text/javascript">
var fullArray = new Array("One","Two","Three","Four","Five");
var sliceOfArray = fullArray.slice(1,4);
</script>
</body>
</html>
3 连接2或多个个数组
var joinedArray = arrayOne.concat(arrayTwo,arrayThree);
4 数组和字符串之间的相互转换
当想循环元素或选取某些元素的时候,把数据放到数组中便利 split()方法
当需要把数据传送到其他地方的时候,可以把数组转换成字符串。 join()方法
<html>
<body>
<script type="text/javascript">
var arrayThree = new Array("John","Paul","Tomy");
var lineUp = arrayThree.join(',');
alert(lineUp);
</script>
</body>
</html>
<html>
<body>
<script type="text/javascript">
var lineUp = "John,Paul,Tony";
var members = lineUp.split(',');
alert(members.length);
</script>
</body>
</html>
5 数组排序
sort()方法允许把数组中的数据项按字母或者数字顺序排序
例 var sortedArray = arrayToSort.sort();
reverse()方法可以把字母表中最后一个的字母作为第一个元素来显示