関数名を文字列として使用するときに関数を呼び出す方法は?例えば関数名を文字列として持つ場合、関数を呼び出してパラメータを渡すにはどうすればよいですか?
$scope.ExecuteFunction = function (func,val) {
// here func="GetActivityInfo" and val="ERF000000000A6543"
// How to Invoke function named in variable func and pass val as parameter ?
// GetActivityInfo(val) to be invoked.
}
var GetActivityInfo = function (elementId) {
// some code
};
グローバル関数は、グローバルオブジェクトのプロパティです(ブラウザ内の「ウィンドウ」)。したがって、 'window [func](val)'は、funcのかっこを持たないようにするために、 – devnull69
を実行する必要があります。 – anoop
'GetActivityInfo'は親関数のプライベートプロパティです。これは[closure](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Closures)によってのみアクセスできます。 [プロパティアクセサ](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Property_Accessors)からアクセスすることはできません。アクセス可能なオブジェクトのプロパティにする必要があります。 – georgeawg