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

相关文章
相关标签/搜索