js实现依赖注入之获取函数的参数列表

1.获取函数的参数

function getArgs(func) {
    // 先用正则匹配,取得符合参数模式的字符串.
    // 第一个分组是这个: ([^)]*) 非右括号的任意字符
    var args = func.toString().match(/function\s.*?\(([^)]*)\)/)[1];
    // 用逗号来分隔参数(arguments string).
    return args.split(",").map(function(arg) {
        // 去除注释(inline comments)以及空格
        return arg.replace(/\/\*.*\*\//, "").trim();
    }).filter(function(arg) {
        // 确保没有 undefined.
        return arg;
    });
}
function myCustomFn(arg1, arg2,arg3) {
   console.log(44);
}
getArgs(myCustomFn) // ["arg1", "arg2", "arg3"]

2.依赖注入

后面就很简单了 省略

js实现依赖注入|获取函数的参数列表|1.获取函数的参数|平易在线