如何在JavaScript中获取字符串表示的参数数组
我试图从函数中获取一个字符串表示的参数数组,但我不确定如何继续。基本上给出了下面的函数如何在JavaScript中获取字符串表示的参数数组,javascript,function,parameters,Javascript,Function,Parameters,我试图从函数中获取一个字符串表示的参数数组,但我不确定如何继续。基本上给出了下面的函数 function MyFunc(param1, param2, param3){ //do all the things } 函数“getParams”执行以下操作时会是什么样子 getParams(MyFunc) // ["param1","param2","param3"] 这有点混乱,但您可以通过将函数转换为字符串,然后将其拆分,直到只获得参数: var getFuncParams = func
function MyFunc(param1, param2, param3){
//do all the things
}
函数“getParams”执行以下操作时会是什么样子
getParams(MyFunc) // ["param1","param2","param3"]
这有点混乱,但您可以通过将函数转换为字符串,然后将其拆分,直到只获得参数:
var getFuncParams = function(MyFunc) {
var str = MyFunc.toString()
var strParams = str.substr((str.indexOf('(')+1), (str.indexOf(')') - str.indexOf('(')) - 1)
var params = strParams.split(",")
return params;
}
这有点混乱,但您可以通过将函数转换为字符串,然后将其拆分,直到只获得参数:
var getFuncParams = function(MyFunc) {
var str = MyFunc.toString()
var strParams = str.substr((str.indexOf('(')+1), (str.indexOf(')') - str.indexOf('(')) - 1)
var params = strParams.split(",")
return params;
}
您想在哪里使用该
getParams
?您想实现什么?您所能做的最好的事情就是将函数转换成字符串,然后通过某种简单的解析来提取参数。例如,如果我有一个控制器函数MyCtrl($scope){},我可以执行MyCtrl.$inject=getParams(MyCtrl)
@FrostwareCEO不构建火柴盒家庭你想在这里使用getParams
?你想实现什么?您所能做的最好的事情就是将函数转换成字符串,然后通过某种简单的解析来提取参数。例如,如果我有一个控制器函数MyCtrl($scope){},我可以执行MyCtrl.$inject=getParams(MyCtrl)代码>@FrostwareCEO不要建造火柴盒房子这似乎正是我想要做的,谢谢!没问题-我对它进行了轻微的编辑,使其位于它自己的函数中。希望有帮助!这似乎正是我想要做的,谢谢!没问题-我对它进行了轻微的编辑,使其位于它自己的函数中。希望有帮助!