inherit繼承模式

2022-09-03 07:39:06 字數 1163 閱讀 6004

function

father ()

father.prototype.lastname = "zhang";

function

son ()

son.prototype =father.prototype;

function

f () {}

function

inherit (target, origin)

inherit(f, father);

son.prototype = new

f ();

son.prototype.name = "zhuqi";

var son = new

son();

var father = new father ();

優化之後的版本:                function

father ()

father.prototype.lastname = "zhang";

function

son ()

function

inherit (target, origin)

f.prototype =origin.prototype;

target.prototype = new

f();

target.prototype.constuctor = target;

} inherit(son, father);

son.prototype.name = "zhuqi";

var son = new

son();

var father = new father ();

把f當作空的構造物件,此繼承模式為衍生發展下來的『聖杯模式』。其餘的繼承會發生乙個問題,如:給son的prototype增加屬性會連帶father一起增加。

注:inherit函式中應再加一句:target.prototype.constuctor = target                  因為繼承的原因,son的constructor會在son.__proto__中找,找到的是f.__proto__,但是f.__proto__又是繼承自father,因此

son的constructor會指向father。所以應當加一句

CSS 樣式繼承 inherit 屬性

在css中,子元素會繼承了父元素的一些樣式屬性。能夠繼承到子類的樣式屬性非常有限,僅是文字 字型 顏色.子類如果還想繼承父類的屬性,可以通過inherit強制繼承。通過編輯器做了個合同管理的系統,要求就是上傳的合同展示在頁面上必須幾乎相同 並且需要在瀏覽器上能填寫合同,由於編輯器用的一般是和標籤 為...

odoo中的inherit模型屬性繼承及模型關係

odoo中的inherit模型屬性繼承及模型關係 一.程式bug adv.py中 class bugadvanced models.model inherit bm.bug 高階模型當中新增乙個所需時間字段 need time fields.integer 所需時間 小時 給bm.bug類的name...

CSS中inherit指定繼承的使用方法

from css中的每個屬性都有乙個特定值 inherit 其含義是指定繼承父元素的相應屬性,使用inherit一方面在 上能地表明要繼承于父元素的樣式屬性,另一方面也使子元素繼承了那些不會被自動繼承的屬性 假如設計者要使id為menu的div元素有2px的黑色邊框,且具有5px的填充,同時想讓其子...