国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

創建自己的對象

2019-11-17 06:02:15
字體:
來源:轉載
供稿:網友

要創建自己的對象實例,必須首先為其定義一個構造函數。構造函數創建一個新對象,賦予對象屬性,并在合適的時候賦予方法。例如,下面的示例為 pasta 對象定義了構造函數。注重 this 要害字的使用,它指向當前對象。

// pasta 是有四個參數的構造器。function pasta(grain, width, shape, hasEgg){    // 是用什么糧食做的?    this.grain = grain;    // 多寬?(數值)    this.width = width;         // 橫截面外形?(字符串)    this.shape = shape;   // 是否加蛋黃?(boolean    this.hasEgg = hasEgg;  }

定義了對象構造器后,用 new 運算符創建對象實例。

var spaghetti = new pasta("wheat", 0.2, "circle", true);var linguine = new pasta("wheat", 0.3, "oval", true);

可以給對象實例添加屬性以改變該實例,但是用相同的構造器生成的其他對象定義中并不包括這些屬性,而且除非你特意添加這些屬性那么在其他實例中并不顯示出來。假如要將對象所有實例的附加屬性顯示出來,必須將它們添加到構造函數或構造器原型對象(原型在高級文檔中討論)中。

// spaghetti 的附加屬性。spaghetti.color = "pale straw";spaghetti.drycook = 7;spaghetti.freshcook = 0.5;var chowFun = new pasta("rice", 3, "flat", false); // chowFun 對象或其他現有的 pasta 對象// 都沒有添加到 spaghetti 對象// 的三個新屬性。// 將屬性‘foodgroup’加到 pasta 原型對象// 中,這樣 pasta 對象的所有實例都可以有該屬性,// 包括那些已經生成的實例。pasta.PRototype.foodgroup = "carbohydrates"// 現在 spaghetti.foodgroup、chowFun.foodgroup,等等// 均包含值“carbohydrates”。

在定義中包含方法

可以在對象的定義中包含方法(函數)。一種方法是在引用別處定義的函數的構造函數中添加一個屬性。例如,下面的示例擴充上面定義的 pasta 構造函數以包含 toString 方法,該方法將在顯示對象的值時被調用。

// pasta 是有四個參數的構造器。// 第一部分與上面相同。function pasta(grain, width, shape, hasEgg){    // 用什么糧食做的?    this.grain = grain;    // 多寬?(數值)    this.width = width;         // 橫截面外形?(字符串)    this.shape = shape;       // 是否加蛋黃?(boolean    this.hasEgg = hasEgg;      // 這里添加 toString 方法(如下定義)。    // 注重在函數的名稱后沒有加圓括號;    // 這不是一個函數調用,而是    // 對函數自身的引用。    this.toString = pastaToString;}// 實際的用來顯示 past 對象內容的函數。 function pastaToString(){    // 返回對象的屬性。    return "Grain: " + this.grain + "/n" +        "Width: " + this.width + "/n" +        "Shape: " + this.shape + "/n" +        "Egg?: " + Boolean(this.hasEgg);}var spaghetti = new pasta("wheat", 0.2, "circle", true);// 將調用 toString() 并顯示 spaghetti 對象// 的屬性(需要Internet 瀏覽器)。window.alert(spaghetti);


上一篇:控制程序的流程

下一篇:getUTCDate 方法

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 远安县| 安福县| 临澧县| 洛宁县| 孟连| 镇远县| 即墨市| 永德县| 潞城市| 淳安县| 米泉市| 平阳县| 深水埗区| 漳州市| 清原| 彩票| 三穗县| 潜江市| 固原市| 六盘水市| 乌海市| 庆云县| 耿马| 象州县| 北海市| 长海县| 靖江市| 峨边| 曲周县| 交口县| 古交市| 聊城市| 沈阳市| 永昌县| 奇台县| 祁门县| 大同县| 磴口县| 彰武县| 永年县| 高碑店市|