Javascript数组

简介:
JavaScript允许我们使用一个数组(Array来存储和访问相关的数据。一个数组有点像一行单元格(元素),每个单元格包含一个独立的数据项。一个数组可以存储JavaScript支持的任何数据类型。因此,举例来说,你可以使用一个数组来处理用户用来选择的项目列表,或者一批图象坐标,或者一组图像的引用。
Array对象,类似String Date对象,需要使用new关键字和构造函数来创建。我们可以在创建它的时候初始化一个数组对象:
var preInitArray = new Array( "First item", "Second item",
"Third Item" );
或者设置它来保存一定数目的数据像:
var preDeterminedSizeArray = new Array( 3 );
或者只创建一个空数组:
var anArray = new Array();
你可以通过为这些元素赋值的方式来为数组添加新的数据项:
anArray[0] = "anItem"
anArray[1] = "anotherItem"
anArray[2] = "andAnother"
                                                                                  
 
n         提示:你可以不使用array()构造函数;而且使用简写符号是很有效的:
var myArray = [1, 2, 3];
var yourArray = ["red", "blue", "green"]
                                                                                  
 
只要你构造了一个数组,我们就可以使用中括号,通过索引和位置(它也是基于0开始的)来访问它的元素:
<html>
<body>
<script type="text/javascript">
var preInitArray = new Array( "First Item",
"Second Item", "Third Item" );
document.write( preInitArray[0] + "<br>" );
document.write( preInitArray[1] + "<br>" );
document.write( preInitArray[2] + "<br>" );
</script>
</body>
</html>
如果你想循环遍历整个数组,使用索引数来存储数据项是非常有用的,我们下面会看一下循环。
你可以不使用数字索引而使用关键字来访问数据元素,像这样:
<html>
<body>
<script type="text/javascript">
// Creating an array object and setting index
// position 0 to equal the string Fruit
var anArray = new Array( );
anArray[0] = "Fruit";
// Setting the index using the keyword
// 'CostOfApple' as the index.
anArray["CostOfApple"] = 0.75;
document.write( anArray[0] + "<br>" );
document.write( anArray["CostOfApple"] );
</script>
</body>
</html>
关键字在下面的一些情况下是非常有效的,在你可以给数据分配有用地标签,或者你存储一些只有在上下文中才有效的实体的地方,如一个图像坐标列表。可是,如果它们已经使用关键字被设置了,那么你不能使用索引数来访问实体(在一些其他的语言中是可以的,如PHP)。我们也可以使用变量作为索引。我们使用变量(一个保存一个字符串,另一个保存一个数字)代替文本值,改写一下前面的例子:
<html>
<body>
<script type="text/javascript">
var anArray = new Array( );
var itemIndex = 0;
var itemKeyword = "CostOfApple";
anArray[itemIndex] = "Fruit";
anArray[itemKeyword] = 0.75;
document.write( anArray[itemIndex] + "<br>" );
document.write( anArray[itemKeyword] );
</script>
</body>
</html>
 
让我们把已讨论过的数组和Math对象的知识应用到一个例子中。我们会写一个简单的脚本,它随机的选取一个广告横幅显示到网页的顶部。
我们会使用一个数组对象来保存一些图像的源文件名,如下:
var bannerImages = new Array();
bannerImages[0] = "Banner1.jpg";
bannerImages[1] = "Banner2.jpg";
bannerImages[2] = "Banner3.jpg";
bannerImages[3] = "Banner4.jpg";
bannerImages[4] = "Banner5.jpg";
bannerImages[5] = "Banner6.jpg";
bannerImages[6] = "Banner7.jpg";
接着我们需要六个对应名字的图片,放在和HTML网页相同的文件夹里。你可以使用你自己的图片或者从网站[url]http://www.beginningjavascript.com[/url]下载我自己的。
接下来我们会初始化一个新的变量,randomImageIndex,使用它来产生一个随机数。在这里我们会使用与前面曾经用过的产生一个随机掷骰子相同的方法,但是不用在结果上加1,因为我们需要产生一个06之间的随机数:
var randomImageIndex = Math.round( Math.random( ) * 6 );
然后我们会使用document.write()把随机选择的图片写到网页中。下面是它的完整的代码:
<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";
bannerImages[4] = "Banner5.jpg";
bannerImages[5] = "Banner6.jpg";
bannerImages[6] = "Banner7.jpg";
var randomImageIndex = Math.round( Math.random( ) * 6 );
document.write( "<img alt=\"\" src=\"" + 
bannerImages[randomImageIndex] + "\">" );
</script>
</body>
</html>
上面就是与之相关的所有东西了。使广告横幅不断的变化比每次访问网页的时候都显示同样的横幅广告更加容易引起访问者的注意,当然,它还会给访问者一个印象,这个站点在经常地被更新。









本文转自 牛海彬 51CTO博客,原文链接:http://blog.51cto.com/newhappy/76997,如需转载请自行联系原作者
目录
相关文章
|
5月前
|
存储 JavaScript 前端开发
JavaScript数组
JavaScript数组
|
JavaScript 前端开发 API
JavaScript Day04 数组详解 1
JavaScript Day04 数组详解
83 0
|
6月前
|
存储 JavaScript 前端开发
javascript中的数组
javascript中的数组
|
JavaScript 前端开发 索引
JavaScript Day04 数组详解 2
JavaScript Day04 数组详解
85 0
|
JavaScript 前端开发 索引
javascript数组
javascript数组
95 0
|
JavaScript 前端开发 索引
javascript中数组的介绍
javascript中数组的介绍
62 0
|
存储 JavaScript 前端开发
【JavaScript】32_数组初步
# 1、简介 数组(Array) - 数组也是一种复合数据类型,在数组可以存储多个不同类型的数据 - 数组中存储的是有序的数据,数组中的每个数据都有一个唯一的索引 可以通过索引来操作获取数据 - 数组中存储的数据叫做元素 - 索引(index)是一组大于0的整数 - 创建数组 通过Array()来创建数组,也可以通过[]来创建数组 - 向数组中添加元素 语法: 数组[索引] = 元素 - 读取数组中的元素 语法: 数组[索引] - 如果读取了一个不存在的元素,不好报错而是返回undefined - length - 获取数组的长
101 0
|
JavaScript 前端开发 索引
【JavaScript】33_数组的方法
# 4、数组的方法 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array ## Array.isArray() - 用来检查一个对象是否是数组 ## at() - 可以根据索引获取数组中的指定元素 - at可以接收负索引作为参数 ## concat() - 用来连接两个或多个数组 - 非破坏性方法,不会影响原数组,而是返回一个新的数组 ```html <script> console.log(Array.isArray({nam
78 0
|
JavaScript 前端开发 索引
【JavaScript】42_数组的方法
# 18、数组的方法 ## sort() - sort用来对数组进行排序(会对改变原数组) - sort默认会将数组升序排列 注意:sort默认会按照Unicode编码进行排序,所以如果直接通过sort对数字进行排序 可能会得到一个不正确的结果 - 参数: - 可以传递一个回调函数作为参数,通过回调函数来指定排序规则 (a, b) => a - b 升序排列 (a, b) => b - a 降序排列 ## forEach() - 用来遍历数组 - 它需要一个回调函数作为参数,这个回调函数会被调用多次 数组中有几个元素,回调函数就会调用几次 每次调
77 0
|
算法 索引
【JavaScript-数组全家福】
【JavaScript-数组全家福】
136 0
【JavaScript-数组全家福】