2016-03-28 3 views
1

関数から文字列表現されたパラメータの配列を取得しようとしています。基本的機能「のgetParams」は、以下のJavaScriptで文字列表現されたパラメータの配列を取得する方法

getParams(MyFunc) // ["param1","param2","param3"] 
+1

ここで、その「getParams」を使用しますか? –

+0

あなたは何を達成しようとしていますか?あなたができる最善のことは、関数を文字列に変換して、何らかの単純な解析によってパラメータを抽出することです。 – Pointy

+0

私は角度依存の自動依存注入を実現しようとしています。たとえば、コントローラの機能がMyCtrl($ scope){}の場合、 MyCtrl $ inject = getParams(MyCtrl); – frostme

答えて

0

これは少し厄介ですが、文字列にあなたの関数を変換することによってこれを行うことができますを行うにはどのようになるか

function MyFunc(param1, param2, param3){ 
    //do all the things 
} 

以下の機能を与えられました

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; 
} 
+0

これはまさに私が達成するようですありがとうございました! – frostme

+0

問題はありません。私はそれを自分自身の機能の中に入れるように少し編集しました。それが役に立てば幸い! – millerbr

関連する問題