<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    samtiger


    QQ:418148757
    Name:yangchuan
    數(shù)據(jù)加載中……
    關于javascript對類的一些理解

    1:在javascript中,函數(shù)也是一種對象,所以他也可以有屬性和方法。
    2:定義一個類,實際上是定義一個構(gòu)造函數(shù)。通常遵循的規(guī)范是函數(shù)名大寫,
    但這個只是大家的一中習慣性的編程規(guī)范,不是必須的。當然你也可以小
    寫。
    3:對象的屬性有以下幾種寫法:
     ?。幔褐苯釉趯ο笊咸砑樱袷剑骸xobject.xxprop = 屬性值
       xxobject表示某一個對象,xxprop表示要添加的新屬性。
     例: var person = new Object();
                person.name="sam";
                alert(person.name); //值為sam;
      上面的例子表示給person對象添加一個新的屬性name并輔值為sam.
      b: 通過構(gòu)造函數(shù)定義類屬性.格式:
       function classname(){
          this.xxprop1 = xxvalue1;
          this.xxprop2 = xxvalue2;
        }
      xxprop1 屬性1;
     例:
        function Person(){
          this.name = 'sam';
          this.sex = '男';
      }
      
       var person = new Person();
       alert(person.name) //值為sam;
       c: 通過構(gòu)造函數(shù)的prototype對象添加屬性 ,格式:Class.prototype.xxprop= value;
        Class表示某構(gòu)造函數(shù),prototype是構(gòu)造函數(shù)對應的prototype對象.每一個構(gòu)造函數(shù)
    都有一個名位prototype的對象.

      例:
        function Person(){ };
      Person.prototype.name = 'sam';
        Person.prototype.sex = "男";
        var person = new Person();
        alert(person.name) //值為sam;

      注意:用構(gòu)造函數(shù)體內(nèi)定義的屬性(如b: this.xxprop1=xxvalue1;) 與在函數(shù)的prototype
    對象里添加屬性的方式有什么區(qū)別?
        主要區(qū)別在于:構(gòu)造函數(shù)體內(nèi)定義的屬性每次new一個新的對象時,都會在內(nèi)存中創(chuàng)建這些屬性
    的副本,而prototype里添加的屬性則不會,它們在內(nèi)存中始終只有一份.不會因為對象的創(chuàng)建,
    存在對分屬性的內(nèi)存空間.但是他們的訪問方式都是一樣的,都是通過對象名點屬性名的方式
    (person.name).
       d: 通過對象直接量的方式添加對象屬性.格式: var objectName={xxprop1:xxvalue,
         xxprop2:xxvalue2};
       我們知道javascript創(chuàng)建一個對象,有三種方式:
        第一種:通過Object函數(shù)創(chuàng)建.如:var person = new Object();
        然后通過上面a的方式加入屬性值如: person.name = 'sam';
            第二種: 通過定義構(gòu)造函數(shù)來創(chuàng)建.如上b方式.如: person = new Person();
            第三種方式:通過對象直接量創(chuàng)建. 比如:
        var person = {name:'sam',sex:'man',age:18};
        即:大括號內(nèi)寫入 屬性 冒號 值 ,即可.
       
         

    posted on 2008-04-01 21:15 sam.chuan.yang 閱讀(302) 評論(2)  編輯  收藏 所屬分類: javascript 筆記

    評論

    # re: 關于javascript對類的一些理解 2008-05-28 17:36 懶人

    前兩種好像比較常用
      回復  更多評論    

    # re: 關于javascript對類的一些理解[未登錄] 2012-04-01 11:01 SPARK

    第三種即匿名對象。實際上,相當多的語言都有匿名對象。

      回復  更多評論    

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導航:
    博客園   IT新聞   Chat2DB   C++博客   博問  
     
    主站蜘蛛池模板: 免费精品国偷自产在线在线 | 亚洲国产精品激情在线观看| 久久青草91免费观看| 狠狠入ady亚洲精品| 亚洲人成电影青青在线播放| 亚洲国产精品无码专区在线观看| 日本特黄特黄刺激大片免费| 欧洲乱码伦视频免费| 国产成人精品免费久久久久| 久久国产一片免费观看| 精品女同一区二区三区免费播放| 亚洲女女女同性video| 亚洲六月丁香六月婷婷蜜芽| 久久久亚洲裙底偷窥综合| 亚洲AV无码国产丝袜在线观看| 国产亚洲精品成人a v小说| 国产成人精品免费直播| 在线播放免费人成视频在线观看| 免费可以看黄的视频s色| 亚洲成人免费电影| 亚洲精品视频免费看| 91福利免费视频| 最近中文字幕大全中文字幕免费| 人妻无码久久一区二区三区免费| a级毛片免费播放| 美女在线视频观看影院免费天天看| 中文字幕在线视频免费| 成人爽a毛片免费| 久久大香伊焦在人线免费| 久久99精品免费视频| 97在线视频免费| 成年在线观看网站免费| 在线观看免费人成视频| 日韩一区二区a片免费观看| 成人免费无码视频在线网站| 天天干在线免费视频| 四虎国产精品免费视| 亚洲欧洲精品成人久久曰影片 | 亚洲AV无码精品国产成人| 亚洲AV成人一区二区三区观看| 国产精品亚洲五月天高清|