JavaScript中的三種對象

    時間:2024-10-24 08:42:28 JavaScript 我要投稿
    • 相關推薦

    JavaScript中的三種對象

      1,內部對象

      如Array,Boolean,Data,Math,Number,Object,RegExp,String對象等

      這些對象系統給我們提供了各自的屬性與方法供調用。

      2,基于類的對象

      用類的方式實現對象的引用,這些類需要我們自己定義

      3,基于原型的對象

      提供有關如何使用 JavaScript 基于原型的對象模型的指南,并且提供指向特定信息的鏈接,這些信息描述基于原型的對象的自定義構造函數和繼承。

      在我們寫js代碼的時候,內部對象是不可避免的要引用,但是光靠這些對象是不夠的,所以需要我們自己定義對象,這個時候通常用到的對象是第三種,即基于原型的對象,下面就如何創建自己的對象,定義對象的方法、屬性,調用對象給出詳細的說明。

      復制代碼 代碼如下:

      //JScript 的一個強大功能是能夠定義構造函數,以創建自定義的基于原型的對象,以便在您的腳本中使用。

      //要創建基于原型的對象的實例,首先必須定義一個構造函數。

      //此過程將創建一個新對象并將它初始化(創建屬性并賦初始值)。

      //當完成后,構造函數將返回對所構造對象的引用。

      //在構造函數內部,創建的對象是通過 this 語句引用的。

      function people(name,age)//定義people對象

      {

      this.mName=name;//這里的mName表示屬性,無需在外面定義,this指示的是people這個對象

      this.Age=age;

      this.category="哺乳動物";

      this.toString=Exporting;//方法,注意這里只能寫toString,而不是toString()

      this.myMethod=function()//等價于this.myMethod=method;然后下面寫method的方法

      {

      return "你好";

      }

      }

      function Exporting()//可以有返回值,但函數名前不用寫返回值的類型,如string,int之類

      {

      return "我的名字是——"+this.mName+",年齡是——"+this.Age;

      }

      /*function method()

      {

      return "你好";

      }*/

      people.prototype.getName=function()//在構造函數外面寫方法,

      //也也可以這樣寫function people.prototype.getName()

      //等價于在構造函數里面的方法:this.getName

      {

      return this.mName;

      }

      people.prototype.getAge=this.Age;//在構造函數外面寫屬性,

      //等價于在構造函數里面的方法:this.getAge

      function people.prototype.getMoney()//同people.prototype.getMoney=function()等價

      //也等價于在構造函數里的寫法:this.getMoney

      {

      return "1000";

      }

      function show()//調用people對象

      {

      var me=new people("劉德華",22);//實例化people對象,關鍵字new

      //var myName=me.getName();

      //alert(myName);

      me.sex="男";//這里的sex屬性只能用于me這個實例,即特有屬性

      //而如果有定義var you =new people("小強",1);

      //you這個實例卻不能調用sex屬性

      //如果要這兩個實例都可以引用的話應該把sex屬性寫作people.prototype.sex

      //alert(me.sex);

      //alert(me.category);

      //alert(me.toString());//或者直接寫alert(me)即可

      //alert(me.myMethod());

      //alert(me.getMoney());

      alert(me.myMethod()+"n姓名:"+me.getName()+"n性別:"+me.sex+"n類別:"+me.category+"n總資產:"+me.getMoney()+"n總結:"+me.toString());

      }

      根據上面的思路,可以在JavaScript內置對象上添加其它屬性或者方法,下面為String對象增加一

      good方法和bad屬性,這是內置對象中所沒有的方法和屬性

      復制代碼 代碼如下:

      String.prototype.good=function()//自定義方法

      {

      return "恭喜你成功對內置String對象追加good方法";

      }

      String.prototype.bad="恭喜你成功對內置String對象追加bad屬性";//自定義屬性

      function test()//調用String對象追加的屬性和方法

      {

      var str="good good study";//定義一個字符串實例str

      alert(str.good()+"n"+str.bad);//調用自定義的string對象的方法good和屬性bad

      }

      最后在html中添加兩個button按鈕,測試對象people和string對象追加的方法和屬性

      復制代碼 代碼如下:

      測試結果通過。表明對象的創建、對象方法屬性的調用、內部對象的追加方法和屬性調用都是正確的。

    【JavaScript中的三種對象】相關文章:

    javascript面向對象中的對象怎么理解03-30

    Javascript中arguments對象的詳解和使用方法03-31

    javascript克隆對象深度介紹03-31

    使用ajax操作JavaScript對象的方法03-08

    在Java中執行JavaScript代碼04-01

    關于javascript對象之內置和對象Math的使用方法03-30

    Javascript中typeof 用法歸納04-01

    JavaScript中的with關鍵字03-25

    JavaScript高級程序設計:本地對象Array03-29

    91久久大香伊蕉在人线_国产综合色产在线观看_欧美亚洲人成网站在线观看_亚洲第一无码精品立川理惠

      人人爱草免费国产视频 | 最新看片国产精品 | 日本一道综合久久aⅴ久久 婷婷色五月综合激情六月导航 | 偷窥国产女洗浴在线观看视频 | 日本亚洲中文无线码在线观看 | 日本中文字幕视频在线看 |