5-创建新对象

使用JavaScript可以创建自己的对象。虽然JavaScript内部和浏览器本身的功能已十分强大,但JavaScript还是提供了创建一个新对象的方法。使其不必像超文本标识语言那样,求于或其它多媒体工具,就能完成许多复杂的工作。

    在JavaScript中创建一个新的对象是十分简单的。首先它必须定义一个对象,而后再为该对象创建一个实例。这个实例就是一个新对象,它具有对象定义中的基本特征。

一、对象的定义

    JavaScript对象的定义,其基本格式如下:
    Function Object(属性表)
    This.prop1=prop1
    This.prop2=prop2
    ...
    This.meth=FunctionName1;
    This.meth=FunctionName2;
    ...
    在一个对象的定义中,可以为该对象指明其属性和方法。通过属性和方法构成了一个对象的实例。如以下是一个关于University对象的定义:
    Function university(name,city,creatDate URL)
    This.name=name
    This.city=city
    This.creatDate=New Date(creatDate)
    This.URL=URL
    其基本含义如下:
    Name-指定一个“单位”名称。
    City-“单位”所在城市。
    CreatDate-记载university对象的更新日期。
    URL-该对象指向一个网址。

二、创建对象实例

    一旦对象定义完成后,就可以为该对象创建一个实例了:
    NewObject=New object();
    其中Newobjet是新的对象,Object已经定义好的对象。例:
    U1=New university(“山西省”,“太原市”,"January 05,199712:00:00"," www.shanxiwindow.net ")
    U2=New university(“山西省网络管理中心”,“太原”,"January 07,1997 12:00:00","htlp://www.shanxiwindow.net")

三、对象方法的使用

    在对象中除了使用属性外,有时还需要使用方法。在对象的定义中,我们看到This.meth=FunctionName语句,那就是为定义对象的方法。实质对象的方法就是一个函数FunctionName,通过它实现自己的意图。
    例在university对象中增加一个方法,该方法是显示它自己本身,并返回相应的字串。
    function university(name,city,createDate,URL)
    This.Name=Name;
    This.city=city;
    This.createDate=New Date(creatDate);
    This.URL=URL;
    This.showuniversity=showuniversity;
    其中This.showuniversity就是定义了一个方法---showuniversity()。
    而showuniversity()方法是实现university对象本身的显示。
    function showuniversity()
    For (var prop in this)
    alert(prop+="+this[prop]+"");
    其中alert是JavaScript中的内部函数,显示其字符串。

四、JavaScript中的数组

1.使用New创建数组

    JavaScript中没有提供像其它语言具有明显的数组类型,但可以通过function定义一个数组,并使用New对象操作符创建一个具有下标的数组。从而可以实现任何数据类型的存储。

    a.定义对象的数组
    Function arrayName(size){
    This.length=Size;
    for(var X=; X<=size;X++)
    this[X]=0;
    Reture this;
    }
    其中arrayName是定义数组的一个名子,Size是有关数组大小的值(1-size),即数组元素的个数。通过for循环对一个当前对象的数组进行定义,最后返回这个数组。
    从中可以看出,JavaScript中的数组是从1到size,这与其它0到size的数组表示方法有所不同,当然你可根据需要将数组的下标由1到size调整到0到size-1,可由下列实现:
    Function arrayName (size)
    For (var X=0; X<=size;X++)
    this[X]=0;
    this.lenght=size;
    Return this;
    从上面可以看出该方法是只是调整了this.lenght的位置,该位置是用于存储数组的大小的。从而调整后的数组的下标将与其它语言一致。但请读者注意正是由于数组下标顺序由1到size,使得JavaScript中的对象功能更加强大。

    b.创建数组实例
    一个数组定义完成以后,还不能马上使用,必须为该数组创建一个数组实例:
    Myarray=New arrayName(n);
    并赋于初值:
    Myarray[1]=“字串1”;
    Myarray[2]=“字串2”;
    Myarray[3]=“字串3”;
    ...
    Myarray[n]=“字串n”;
    一旦给数组赋于了初值后,数组中就具有真正意义的数据了,以后就可以在程序设计过程中直接引用。

2.创建多维数组

    Function creatMArray(row,col){
    var indx=0;
    this.length=(row*10)+col
    for(var x=1;x<=row;x++)
    for(var y=1;y<=col;y++)
    indx=(x*10)+y;
    this[indx]=””;
    }
    myMArray=new creatMArray();
    之后可通过myMArray[11]、myMArray[12]、myMArray[13]、myMArray[21]、myMArray[22]、myMArray[23]、…来引用。

3.内部数组

    在Java中为了方便内部对象的操作,可以使用窗体(Forms)、框架(Frames)、元素(element)、链接(links)和锚(Anchors)数组实现对象的访问。
    anchors[]:使用《A name=“anchorName“》标识来建立锚的链接。
    links[]: 使用<A href=”URL”>来定义一个越文本链接项。
    Forms[]: 在程序中使用多窗体时,建立该数组。
    Elements[]:在一个窗口中使用从个元素时,建立该数组。
    Frames[]:建立框架时,使用该数组
    anchors[]用于窗体的访问(它是通过《form name=“form1”》所指定的),link[]用于被链接到的锚点的访问(它是通过《a href=URL》所指定的)。Forms[]反映窗体的属性,而anchors[]反映Web页面中的链接属性。
    有关锚数组的文档:
    <HTML>
    <HEAD>
    <BODY>
    <A NAME=”MyAnchorsName1”>
    HTML Code
    <A NAME=<”MyAnchorsName2”>
    HTML Code
    <A HREF=<”#MyAnchorsName1”>
    <A HREF=<”#MyAnchorsName2”>
    该文档段建立了两面全锚的链接,可通过Anchors[]访问这些锚。document.Anchors[0]反映第一个锚,而document.Anchors[1]反映第二个锚的有关信息。

    本讲介绍了用户自行创建对象的方法, 用户可根据需要创建自己的对象。并介绍了JavaScript中建数组的方法。


文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags:
评论: 0 | 引用: 8 | 查看次数: 4687
发表评论
你没有权限发表评论!