2012-03-19 4 views
2

jQueryでカスタムイベントを登録してトリガーするJavaScriptがあります。イベントハンドラーのないイベントをトリガーすると、どんな種類のパフォーマンスが発生するのでしょうか?それに結合している - 例:存在しないjQueryのイベントとパフォーマンスをトリガーする

var someData = ['blah', 'foo', 'bar']; 
$('#somediv').trigger('StateChange', [someData]); 

上記(非常に短い)の例では、何の$('#someDiv').on('StateChange', ...)イベントハンドラが存在しないので、イベントをトリガするために、廃棄物であると私は、たとえば、場合重大なパフォーマンスヒットを見ることハンドラがバインドされていない特定の要素に対して5〜10個のイベントトリガがありましたか?

+1

コードをプロファイリングしましたが、これが問題のある場所になっていますか?最適化の2つのルールを覚えておいてください:** 1 ** 'それはしないでください** 2 **'専門家のためだけに:まだやってはいけないよ ' – asawyer

+0

ああ、早すぎる最適化...: 'P' –

+1

* "...重要なパフォーマンスヒットが見られますか?"いいえ。 –

答えて

1

いいえ、5-10個のオブジェクトでは、ハンドラのないイベントを発生させるためのパフォーマンスが大幅に低下することはありません。

イベントシステムのポイントは、問題のオブジェクトに要求された動作のハンドラが割り当てられているかどうかを心配する必要がないことです。このようにして、あらゆる種類のテストを行うことなく、思いのままにイベントをトリガすることができます。

関連する問題