This Domain(Admin5.com) is for Sale:

Javascript实例教程(19) 数组

时间:2007-10-22  来源:不详  作者:林子

使用javascript数组

在javascript 1.0中构造器只存在Date对象和用户定义的对象。你可能期望有个数组构造器,但是一直没能实现,直到javascript 1.1的出现,你的期望成为了现实。我们可以如下来定义用户对象: 织梦内容管理系统

function blankArray(n) { dedecms.com

for (var i=0; i < n; i ) 织梦好,好织梦

this[i] = null;

织梦内容管理系统

this.length = n; 内容来自dedecms

}

本文来自织梦

blankArray函数创建了一个数组,这个数组中有n个空白项。下面再给出使用这个构造器的例子:

内容来自dedecms

var myArray = new blankArray(3);

织梦好,好织梦

myArray[0] = "hello"; dedecms.com

myArray[1] = "world"; 织梦好,好织梦

myArray[2] = "!"; 本文来自织梦

如果你对其它编程语言(如C语言)有些经验的话,你就会直到数组的索引是从0开始的而不是从1开始的。因此在上面的例子中数组索引是从0到2的,故这个数组的长度为3。

copyright dedecms

以下的代码是更为高级的数组构造器。它使用了'arguments'属性来对数组赋值而不只是创建一个空数组元素,这个属性对于所有的函数都是存在的。虽然没有给定任何的参数,传递的数值仍然可以通过arguments数组来进行访问。具体代码如下: 本文来自织梦

function makeArray() {

copyright dedecms

for (var i=0; i < arguments.length; i )

本文来自织梦

this[i] = arguments[i];

内容来自dedecms

this.length = arguments.length; 内容来自dedecms

} 织梦好,好织梦

而构造器的调用可以是这样的: 织梦内容管理系统

var myArray = new makeArray("hello", "world", "!");

内容来自dedecms

在javascript 1.1中,创建数组构造器结合了blankArray和makeArray的特定。如下的一个调用: 织梦内容管理系统

var myArray = new Array(3); // requires JS 1.1 copyright dedecms

这个调用创建了一个空白数组(其长度为3)作为上面示范的blankArray构造器。而在Netscape中称为'dense array',因为每一个元素都有一个数值,可以如下来创建:

copyright dedecms

var myArray = new Array(value1, value2, value3); // JS 1.1 dedecms.com

既然你对构造器和对象属性比较熟悉了,我们可以进一步举些例子。如果你是使用javascript 1.1或者更高版本,你可以使用数组构造器。否则你使用makeArray对象更为合适些。 var workPeople = new Array( dedecms.com

new Person("Thomas", 25, "green"),

dedecms.com

new Person("Richard", 35, "blue"), dedecms.com

new Person("Harold", 30, "chartreuse") dedecms.com

); dedecms.com

workPeople是一个拥有三个Person对象的数组。每一个Person都有name(名字)、age(年龄)、colour(肤色)以及birthYear(出生年份)属性。

看完这篇,您有何感觉呢?

文章评论

共有位Admini5网友发表了评论 查看完整内容

24小时热门信息