0

次のパラメーターを取る汎用関数を作成しようとしています: JavaScript クラスのオブジェクト (型オブジェクト)、メソッド名 (型文字列)、およびパラメーター (型オブジェクト) を渡します。以下のように、 InvokeFunction という名前の関数を作成しました。

function InvokeFunction(objPerson , eventName, objParam)
{
 // now here I want to invoke an function(eventName) which is present in  objPerson(an javascript class) and also pass an objParam as it is an parametrized function
}

これを行う必要があります:

オブジェクトとイベント名、およびその関数のパラメーターの必要性だけを渡す 1 つの共通の場所が必要です。

これは try catch ブロック内で処理されるため、渡されたイベント名がオブジェクトに存在しない場合は、例外を処理します。

4

1 に答える 1

4

構文は次のとおりです。

objPerson[eventName](objParam);

JavaScript では、「メソッド」は、プロパティに関連付けられた単なる関数であり、プロパティを検索して同じ式で関数を呼び出すことによって呼び出されます。

JavaScript では、次の 2 つの方法でプロパティを参照できます。ドット表記とリテラル名を使用します。

obj.foo();

または括弧付き表記と文字列を使用します。

obj["foo"]();

文字列は任意の式の結果である可能性があるため、文字列リテラル、変数参照、計算の結果など、何でもかまいません。

于 2013-02-19T16:28:34.257 に答える