JS 中方法的注入

JS 中方法的修飾(注入寫法)。javascript

假如我有一個函數,執行某功能,程序中我開了一個口子,使用者能夠傳遞新方法來執行這個功能。java

那麼如今就有2種狀況:1. 使用者徹底用他提供的方法替代個人。2.使用者依然使用個人,在我以後再使用它的。函數

 

封裝一個函數:

function inject(processor, fn) {
        return (payload) => {
            return processor.call(new Context(payload), payload, getFn(fn, payload))
        }
}

使用的時候 :

假設我原來的方法是 fun, 接收的參數是一個

// fun是舊的方法
fun_new = function(payload, fun){
  // 若是須要執行fun,那麼就調用fun,若是不須要,就忽略第二個參數
}

fun = inject(fun_new, fn);

這樣的寫法,是否使用原方法徹底由注入的方法決定。code

相關文章
相關標籤/搜索