中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

js裝飾者模式怎么實現

發布時間:2022-06-02 15:24:06 來源:億速云 閱讀:134 作者:iii 欄目:大數據

這篇“js裝飾者模式怎么實現”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“js裝飾者模式怎么實現”文章吧。

概念

1、裝飾者模式在不改變對象本身的基礎上,在程序運行期間動態添加對象的方法。

2、js語言動態更改對象相當容易,可以直接更改對象和對象的某種方法,不需要使用類來實現裝飾者的模式。

實例

Function.prototype.before = function(beforefn) {
    var self = this;    //保存原函數引用
    return function(){  //返回包含了原函數和新函數的 '代理函數'
        beforefn.apply(this, arguments);    //執行新函數,修正this
        return self.apply(this,arguments);  //執行原函數
    }
}
Function.prototype.after = function(afterfn) {
    var self = this;
    return function(){
        var ret = self.apply(this,arguments);
        afterfn.apply(this, arguments);
        return ret;
    }
}
var func = function() {
    console.log('2');
}
//func1和func3為掛載函數
var func1 = function() {
    console.log('1');
}
var func3 = function() {
    console.log('3');
}
func = func.before(func1).after(func3);
func();

以上就是關于“js裝飾者模式怎么實現”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

js
AI

河东区| 浏阳市| 鄂托克前旗| 黄梅县| 墨玉县| 灌南县| 宜宾市| 南昌县| 永善县| 中方县| 武功县| 天门市| 泽库县| 明光市| 福建省| 长岭县| 章丘市| 托克逊县| 洞头县| 阜城县| 东城区| 平阴县| 山西省| 开鲁县| 阿拉尔市| 西和县| 民县| 太谷县| 通辽市| 武隆县| 信宜市| 宜章县| 中西区| 莎车县| 清涧县| 逊克县| 道真| 隆化县| 株洲县| 九龙坡区| 庄河市|