色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

JavaScript繼承方式(1)

  前段時間溫故了下JS OO之寫類方式,從這篇開始我們看看JS OO之繼承方式。

  面向對象的語言多數都支持繼承,繼承最重要的優點就是代碼復用,從而構建大型軟件系統。如果一個類能夠重用另一個類的屬性和或方法,就稱之為繼承。從這個角度來看看JS的繼承方式。JS中繼承方式與寫類方式息息相關。不同的寫類方式造成不同的繼承方式。各種流行JS庫繼承方式也各不相同。從最簡單的復用開始。

  1、構造函數方式寫類,通過方法調用復制父類屬性/字段到子類 實現繼承

  這里父類,子類都采用構造函數方式寫,不用原型。子類調用父類函數來復制父類的屬性。

/**
* 父類Polygon:多邊形
* @param {Object} sides
*/
function Polygon(sides) {
this.sides = sides;
this.setSides = function(s) {this.sides=s;}
}

/**
* 子類Triangle:三角形
*/
function Triangle() {
this.tempfun = Polygon;//父類引用賦值給子類的一個屬性tempfun
this.tempfun(3);//調用
delete this.tempfun;//刪除該屬性
this.getArea = function(){};
}

//new個對象
var tri = new Triangle();
console.log(tri.sides);
//繼承的屬性
console.log(tri.setSides);//繼承的方法
console.log(tri.getArea);//自有的方法

//缺點是對于Triangle的實例對象用instanceof為父類Polygon時是false
console.log(tri instanceof Triangle);//true
console.log(tri instanceof Polygon);//false

it知識庫JavaScript繼承方式(1),轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 茶陵县| 沁源县| 长乐市| 垣曲县| 呼和浩特市| 翼城县| 海口市| 鹤岗市| 电白县| 英德市| 杂多县| 涿鹿县| 裕民县| 奎屯市| 永康市| 如东县| 安丘市| 瑞昌市| 青河县| 临汾市| 湖北省| 庆云县| 汕头市| 和政县| 尚志市| 寻乌县| 垦利县| 汽车| 固镇县| 五台县| 高平市| 盐池县| 琼海市| 七台河市| 界首市| 旬邑县| 贞丰县| 浮山县| 望江县| 郁南县| 江油市|