91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

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

扎兰屯市| 沅陵县| 东海县| 马公市| 如皋市| 桓台县| 宜城市| 德清县| 扬中市| 宽城| 昭觉县| 和平县| 蚌埠市| 河北区| 堆龙德庆县| 阜南县| 康定县| 额尔古纳市| 治多县| 祁门县| 大埔县| 甘泉县| 古浪县| 原平市| 万荣县| 鄂尔多斯市| 黄山市| 泰兴市| 新宁县| 曲阜市| 佛山市| 津市市| 延寿县| 永吉县| 贺兰县| 祥云县| 修武县| 平潭县| 环江| 沈阳市| 韩城市|