2

私が欲しいものの例として、定義されていない関数を呼び出すと、コンソールに次のようなメッセージが表示されます。nonExistentFunc is not defined

このメッセージを表示するのではなく、Javascriptに関数を呼び出させることは可能ですか?おそらくFunction.prototypeで?

4

1 に答える 1

0

オプションは次のとおりです。

  1. グローバル例外ハンドラーを設定し、すべてのイベントハンドラーを例外ハンドラーでラップし、存在しない関数を実行してスローされた例外をキャッチし、例外ハンドラーでその特定の例外を検出してから、独自の関数を呼び出して処理しますその特定の例外。

  2. 呼び出す前に特定の関数呼び出しをテストして、呼び出す前に関数自体が定義されているかどうかを確認します。明らかに、コード内のすべての関数に対してこれを行うことはできません(できますが、あまり実用的ではありません)が、関数が適切に定義されているかどうかをテストしたい場所がいくつかある場合は、次のことができます。次のように呼び出す前に、それをテストするコードを記述します。

コード例:

if (typeof obj.funcName === 'undefined') {
    // call me own special function
} else {
   obj.funcName();
}
于 2012-10-21T00:45:04.967 に答える