成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

如何使用javascript中的原型模式

這篇文章主要講解了如何使用javascript中的原型模式,內(nèi)容清晰明了,對此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會有幫助。

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:國際域名空間、雅安服務(wù)器托管、營銷軟件、網(wǎng)站建設(shè)、長豐網(wǎng)站維護(hù)、網(wǎng)站推廣。

介紹:在日常的開發(fā)過程中,我們經(jīng)常會利用到前端模板引擎來做頁面渲染,因?yàn)榇嬖诤芏囗撁娼Y(jié)構(gòu)相同,內(nèi)容不同的場景。這種場景在js層面也會遇到,

很多組件存在相同或者類似,重復(fù)的創(chuàng)建會導(dǎo)致系統(tǒng)的消耗,這就要用到原型模式了。將相似內(nèi)容提取出來作為原型類,創(chuàng)建具體類時需要對原型類進(jìn)行復(fù)制然后擴(kuò)展。

需要注意的是,復(fù)制出來的對象在進(jìn)行修改時不會影響到原型類,二者相互獨(dú)立。

定義:使用原型實(shí)例指定創(chuàng)建對象的種類,并且通過克隆這些原型創(chuàng)建新的對象。原型模式是一種對象創(chuàng)建型模式。

場景:我們還是基于Dialog類來實(shí)現(xiàn)原型模式,我將所有彈窗共有的屬性方法抽取出來,每次創(chuàng)建時通過復(fù)制其基礎(chǔ)屬性,在此基礎(chǔ)上進(jìn)行完善,然后返回新的對象。

示例:

var Dialog = function(){
 this.init = function(arg){
 this.element = arg.element;
 this.name = arg.name;
 }
 this.show = function(){
 console.log(this.name + ' is show -> ' + this.element);
 }
};
var createDialog = function(arg){
 var _dialog = function(){};
 _dialog.prototype = new Dialog();
 
 var resDia = new _dialog();
 resDia.init(arg);
 return resDia;
 
}
var notice = createDialog({name:'notice',element:'<div>notice</div>'});
var toast = createDialog({name:'toast',element:'<div>toast</div>'});
var warnin = createDialog({name:'warnin',element:'<div>warnin</div>'});
 
notice.show(); //notice is show -> <div>notice</div>
toast.show(); //toast is show -> <div>toast</div>
warnin.show(); //warnin is show -> <div>warnin</div>

原型模式總結(jié):

優(yōu)點(diǎn):
* 當(dāng)創(chuàng)建新的對象實(shí)例較為復(fù)雜時,使用原型模式可以簡化對象的創(chuàng)建過程,通過復(fù)制一個已有實(shí)例可以提高新實(shí)例的創(chuàng)建效率。
* 擴(kuò)展性較好

缺點(diǎn):
* 對已有類進(jìn)行改造時需要修改源代碼,違背了開關(guān)原則。

看完上述內(nèi)容,是不是對如何使用javascript中的原型模式有進(jìn)一步的了解,如果還想學(xué)習(xí)更多內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

網(wǎng)站題目:如何使用javascript中的原型模式
網(wǎng)站地址:http://jinyejixie.com/article34/gpecpe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、網(wǎng)頁設(shè)計(jì)公司、標(biāo)簽優(yōu)化、網(wǎng)站內(nèi)鏈、移動網(wǎng)站建設(shè)、軟件開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)
达尔| 象州县| 武强县| 聂拉木县| 宿松县| 宜丰县| 青州市| 青州市| 德化县| 保亭| 浠水县| 东山县| 曲麻莱县| 尼勒克县| 成都市| 镇赉县| 株洲县| 绥化市| 尼玛县| 虹口区| 永宁县| 麻阳| 咸丰县| 渭南市| 玉龙| 岳阳市| 靖西县| 凤翔县| 宝坻区| 左权县| 和龙市| 鄂尔多斯市| 禄丰县| 新蔡县| 泰安市| 渝北区| 宜宾市| 西华县| 庆安县| 称多县| 三门峡市|