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

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

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

    隨筆-314  評論-209  文章-0  trackbacks-0

    研究發(fā)現(xiàn):屬性(變量)可分為三類(對象屬性、全局變量和局部變量)
    對象屬性:聲明時(shí)以“this.”開頭,只能被“類的實(shí)例”即對象所調(diào)用,不能被“類內(nèi)部(對外不對內(nèi))”調(diào)用;全局變量:聲明時(shí)直接以變量名開頭,可以任意調(diào)用(對內(nèi)對外);局部變量:只能被

    “類內(nèi)部(對內(nèi)不對外)”調(diào)用。

     

    JS函數(shù)的聲明與訪問原理

    <script type="text/javascript">  
    //類  
    var testClass = function(){  
      //對象屬性(對外不對內(nèi),類調(diào)用)  
      this.age ="25";  
      //全局變量(對內(nèi)對外)  
      name="jack";  
      //局部變量(對內(nèi)不對外)
      var address = "beijing";
        
      //全局函數(shù)(對內(nèi)對外)  
      add = function(a,b){  
        //可訪問:全局變量和局部變量  
        multiply(a,b);  
        return a+b;  
      }  
      //實(shí)例函數(shù)(由類的對象調(diào)用)  
      this.minus = function(a,b){  
        //可以訪問:對象屬性、全局變量和局部變量  
        return a-b;  
      }  
      //局部函數(shù)(內(nèi)部直接調(diào)用)  
      var multiply = function(a,b){  
        //只能訪問:全局變量和局部變量  
        return a*b;  
      }  
    }  
     
     
    //類函數(shù)(由類名直接調(diào)用)  
    testClass.talk= function(){  
      //只能訪問:全局變量和全局函數(shù)  
      this.what = function(){  
        alert("What can we talk about?");  
        about();  
      }  
        
      var about = function(){  
        alert("about name:"+name);
        alert("about add(1,1):"+add(1,1));
      }  
    }  
     
     
    //原型函數(shù)(由類的對象調(diào)用)  
    testClass.prototype.walk = function(){  
      //只能訪問:全局變量和全局函數(shù)  
      this.where = function(){  
        alert("Where can we go?");
        go();  
      }  
        
      var go = function(){  
        alert("go name:"+name); 
        alert("go add(1,1):"+add(1,1));
      }  
    }  
    </script> 


    下面看看如何調(diào)用:

    <script type="text/javascript">  
    //獲取一個(gè)cbs類的實(shí)例  
    var cbs= new testClass();  
    //調(diào)用類的對象屬性age  
    alert("age:"+cbs.age);  
     
    //獲取類函數(shù)talk的實(shí)例  
    var talk = new testClass.talk();
    //調(diào)用類函數(shù)的實(shí)例函數(shù)  
    talk.what();  
     
    //獲取原型函數(shù)walk的實(shí)例  
    var walk = new cbs.walk();  
    //調(diào)用原型函數(shù)的實(shí)例函數(shù)  
    walk.where();  
    </script> 

    posted on 2011-07-09 11:34 xzc 閱讀(1010) 評論(2)  編輯  收藏 所屬分類: XMLWeb

    評論:
    # re: js 高級編程[未登錄] 2011-12-22 09:36 | xzc
    function myClass(id, name)
    {
    this.ID = id;
    this.Name = name;
    }

    myClass.prototype =
    {
    showMessage: function()
    {
    alert("ID: " + this.ID + ", Name: " + this.Name);
    },
    showMessage2: function()
    {
    alert("Method2");
    }
    }

    var obj1 = new myClass(1, "johnson");
    obj1.showMessage();
    obj1.Name="John";
    obj1.showMessage();
    var obj2 = new myClass(2, "Amanda");
    obj2.showMessage();
      回復(fù)  更多評論
      
    # re: js 高級編程[未登錄] 2011-12-22 09:36 | xzc
    function subClass(){ }
    subClass.prototype =
    {
    Name: "sub"
    }

    function myClass()
    {
    //構(gòu)造函數(shù)
    }

    myClass.prototype =
    {
    ID: 1,
    Name: "johnson",
    SubObj: new subClass(),
    showMessage: function()
    {
    alert("ID: " + this.ID + ", Name: " + this.Name + "SubObj.Name:" + this.SubObj.Name);
    }
    }

    var obj1 = new myClass();
    obj1.SubObj.Name = "XXX";
    obj1.showMessage();
    var obj2 = new myClass();
    obj2.showMessage();  回復(fù)  更多評論
      
    主站蜘蛛池模板: 国产亚洲3p无码一区二区| 亚洲Av无码国产情品久久| 国产亚洲精品自在久久| 国产免费MV大全视频网站| 亚洲国产小视频精品久久久三级| 特级毛片免费播放| 国产成人精品曰本亚洲79ren| 国产精品玖玖美女张开腿让男人桶爽免费看 | 一级特黄录像免费播放中文版| mm1313亚洲国产精品美女| 一级特黄aaa大片免费看| 国产亚洲高清不卡在线观看| 免费国产叼嘿视频大全网站| 日产亚洲一区二区三区| 97热久久免费频精品99| 亚洲精品无码久久久久久| 亚洲成a人片在线播放| aa级女人大片喷水视频免费| 亚洲一区二区在线视频| 免费H网站在线观看的| MM1313亚洲国产精品| 亚洲精品国产字幕久久不卡| 99在线免费观看视频| 亚洲一卡一卡二新区无人区| 国产精品久免费的黄网站| 色多多A级毛片免费看| 亚洲人成网站影音先锋播放| 成年女人毛片免费视频| 成人午夜影视全部免费看| 亚洲第一精品在线视频| 日美韩电影免费看| 天堂在线免费观看| 亚洲最大成人网色香蕉| 免费A级毛片无码A| 免费能直接在线观看黄的视频| 在线观看亚洲免费| 久久精品亚洲中文字幕无码麻豆| 卡一卡二卡三在线入口免费| igao激情在线视频免费| 亚洲Av高清一区二区三区| 国产啪亚洲国产精品无码 |