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

溫馨提示×

溫馨提示×

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

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

JavaScript中什么是裝飾者模式

發布時間:2021-04-27 16:59:30 來源:億速云 閱讀:123 作者:Leah 欄目:編程語言

本篇文章為大家展示了JavaScript中什么是裝飾者模式,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

JavaScript有什么特點

1、js屬于一種解釋性腳本語言;2、在絕大多數瀏覽器的支持下,js可以在多種平臺下運行,擁有著跨平臺特性;3、js屬于一種弱類型腳本語言,對使用的數據類型未做出嚴格的要求,能夠進行類型轉換,簡單又容易上手;4、js語言安全性高,只能通過瀏覽器實現信息瀏覽或動態交互,從而有效地防止數據的丟失;5、基于對象的腳本語言,js不僅可以創建對象,也能使用現有的對象。

1、概念

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

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

2、實例

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();

上述內容就是JavaScript中什么是裝飾者模式,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

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

AI

天峻县| 闻喜县| 桦川县| 堆龙德庆县| 视频| 从江县| 保康县| 金湖县| 临洮县| 恩平市| 会昌县| 旺苍县| 蓬莱市| 永平县| 长宁区| 滕州市| 吉隆县| 岐山县| 梁河县| 盐亭县| 阳西县| 商城县| 杭州市| 鄂托克前旗| 永善县| 巴东县| 定襄县| 三亚市| 青龙| 四会市| 寿光市| 温州市| 平泉县| 和平区| 开平市| 左权县| 衡山县| 宣威市| 黑河市| 襄樊市| 广东省|