中文字幕日韩一区二区_国产一区二区av_国产毛片av_久久久久国产一区_色婷婷电影_国产一区二区精品

javascript框架之繼承機制(一)

大一點的框架都有這個東西。Prototype原來的繼承機制非常弱,為了與mootools對抗也強化了這一方面。嘛,要用原型繼承來模仿類繼承,都基本存在一個克隆函數(shù)。把父類的原型屬性復(fù)制到子類上去。理念的東西暫時這么多,動手實踐一下最實際。我們設(shè)計一個數(shù)組類,擁有原生數(shù)組的能力與新擴展的能力。

很顯然這是工廠方法,生成的原生數(shù)組,如果要擴展而不污染原生數(shù)組就又要再加一重包裝。我們看繼承是怎樣實現(xiàn)的。這涉及到兩個類,原生數(shù)組類與新數(shù)組類。先看代碼:

由于Javascript的原型鏈的關(guān)系,我們不能直接var Array2 = Array;var a = new Array2;這樣一旦從Array2的原型添加新方法(添加方法都建議往原型里加,不建議做成類方法)時,Array的原型也被加上了,因為它們是在同一條船上。我們必須斷開它們。于是我們需要一個Parent函數(shù)做橋接。我們可以說Array為目標(biāo)父類,Parent為真正父類。先把目標(biāo)父類的原型賦給Parent的原型,這樣Parent就擁有其所有公開的方法,然后我們再把這些方法賦給Array2。但這時Array2的實例的constructor 仍為原生的數(shù)組,我們要修正一下,也就是把它的原型上的constructor屬性指向自己(Array2)即可(原來是Array)。我們可以參見下圖看Prototype與constructor的關(guān)系。

it知識庫javascript框架之繼承機制(一),轉(zhuǎn)載需保留來源!

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

主站蜘蛛池模板: 97伦理| 欧美 日韩精品 | 国产精品久久久精品 | 精品久久久一区 | 一区久久| 久久精品久久精品 | 成人性视频免费网站 | 一区二区中文字幕 | 成人av播放 | 久久久涩 | 国产福利视频 | 日韩精品视频网 | 操人视频在线观看 | 免费簧片视频 | 久久99国产精品 | 国产精品久久久久久久久久三级 | 色婷婷综合久久久久中文一区二区 | 亚洲综合视频一区 | 色天天综合| 毛片链接| 97成人免费 | 久久久久久黄 | 国产精品久久久久久一区二区三区 | 日本国产一区二区 | 日本三级日产三级国产三级 | 国产在线精品一区二区三区 | 国产成人精品久久久 | 国产亚洲精品精品国产亚洲综合 | 日韩精品三区 | 免费 视频 1级 | 精品乱子伦一区二区三区 | 久久精品久久精品久久精品 | 久久噜噜噜精品国产亚洲综合 | 一区二区免费在线视频 | 亚洲国产精品久久久 | 精品国产三级 | 91精品国产91久久久久久三级 | 成人在线视频网 | 日本不卡一二三 | 91中文视频 | 久久国色 |