欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

javascript 類定義的4種方法

 更新時間:2009年09月12日 21:51:47   作者:  
javascript 類定義的4種方法,大家可以參考下根據需要選擇。
復制代碼 代碼如下:

/*
工廠方式--- 創(chuàng)建并返回特定類型的對象的 工廠函數 ( factory function )
*/
function createCar(color,doors,mpg){
var tempCar = new Object;
tempCar.color = color;
tempCar.doors = doors;
tempCar.mpg = mpg;
tempCar.showCar = function(){
alert(this.color + " " + this.doors);
}
return tempCar;
}

/*
構造函數方式--- 構造函數看起來很像工廠函數
*/
function Car(color,doors,mpg){
this.color = color;
this.doors = doors;
this.mpg = mpg;
this.showCar = function(){
alert(this.color);
};
}
/*
原型方式--- 利用了對象的 prototype 屬性,可把它看成創(chuàng)建新對象所依賴的原型
*/
function Car(color,doors,mpg){
this.color = color;
this.doors = doors;
this.mpg = mpg;
this.drivers = new Array("nomad","angel");
}

Car.prototype.showCar3 = function(){
alert(this.color);
};

/*
混合的構造函數 /原型方式--- 用構造函數定義對象的所有非函數屬性,用原型方式定義對象的函數屬性(方法)
*/
function Car(sColor, iDoors, iMpg) {
this.color = sColor;
this.doors = iDoors;
this.mpg = iMpg;
this.drivers = new Array("Mike", "Sue");
}

Car.prototype.showColor = function () {
alert(this.color);
};
/*
動態(tài)原型方法--- 在構造函數內定義非函數屬性,而函數屬性則利用原型屬性定義。唯一的區(qū)別是賦予對象方法的位置。
*/
function Car(sColor, iDoors, iMpg) {
this.color = sColor;
this.doors = iDoors;
this.mpg = iMpg;
this.drivers = new Array("Mike", "Sue");

if (typeof Car._initialized == "undefined") {

Car.prototype.showColor = function () {
alert(this.color);
};

Car._initialized = true;
}
} //該方法使用標志( _initialized )來判斷是否已給原型賦予了任何方法。

相關文章

  • JavaScript 繼承使用分析

    JavaScript 繼承使用分析

    繼承,通俗地說,之前你寫過一些類,這些類中有一些是而你現在要寫的類的功能的子集或者基本相同,那么你不用完全重新寫一個新的類,你可以把之前寫的類拿過來使用.這樣的一種代碼重用過程就叫做繼承
    2011-05-05
  • JavaScript對象模型-執(zhí)行模型

    JavaScript對象模型-執(zhí)行模型

    數據類型,基本數據類型基本數據類型是JS語言最底層的實現。
    2008-04-04
  • js定義對象簡單學習例子

    js定義對象簡單學習例子

    js定義對象簡單學習例子...
    2007-09-09
  • JAVASCRIPT  THIS詳解 面向對象

    JAVASCRIPT THIS詳解 面向對象

    在面向對象編程語言中,對于this關鍵字我們是非常熟悉的。比如C++、C#和Java等都提供了這個關鍵字
    2009-03-03
  • js繼承 Base類的源碼解析

    js繼承 Base類的源碼解析

    Base據說是最好的js繼承的封裝類,最近讀了一下base2.js的繼承部分,現在將源碼的解析貼下,有錯誤的地方希望大家指出,我會更新的.
    2008-12-12
  • 關于JavaScript定義類和對象的幾種方式

    關于JavaScript定義類和對象的幾種方式

    在說這個話題之前,我想先說幾句題外話:最近偶然碰到有朋友問我“hoisting”的問題。即在js里所有變量的聲明都是置頂的,而賦值則是在之后發(fā)生的。
    2010-11-11
  • JavaScript類和繼承 this屬性使用說明

    JavaScript類和繼承 this屬性使用說明

    本文介紹了JavaScript里面的this屬性。這個屬性是理解JavaScript類和繼承的重要基礎。
    2010-09-09
  • javascript面向對象之二 命名空間

    javascript面向對象之二 命名空間

    javascript中本沒有命名空間的概念,但是要體現面向對象的思想,應當有命名空間,就像java中的package,.net中的namespace一樣,作用主要為了防止類名沖突,相同的類名只要屬于不同的命名空間,便不會沖突。
    2011-02-02
  • javascript 面向對象全新理練之繼承與多態(tài)

    javascript 面向對象全新理練之繼承與多態(tài)

    前面我們討論了如何在 JavaScript 語言中實現對私有實例成員、公有實例成員、私有靜態(tài)成員、公有靜態(tài)成員和靜態(tài)類的封裝。這次我們來討論一下面向對象程序設計中的另外兩個要素:繼承與多態(tài)。
    2009-12-12
  • js面向對象 多種創(chuàng)建對象方法小結

    js面向對象 多種創(chuàng)建對象方法小結

    js面向對象 多種創(chuàng)建對象方法小結,需要的朋友可以參考下
    2012-05-05

最新評論