2011-12-04 10 views
12

私は非常に遅いですが、読み込み中ではなく、ページ上のフォームフィールドに入力することの応答性の観点からです。Javascriptのパフォーマンス:何がページのスローダウンを確認するのですか?

ページにはajaxはありません。これはネットワーク転送とは関係ありません。

コードのボトルネックがどこにあるかを発見するための優れたツールや戦略はありますか?私はボトルネックがどこにあるのか教えてくれるクローム開発ツールには何も見つかりませんでした。

+0

http://stackoverflow.com/questions/855126/what-is-the-best-way-to-profile-javascript-execution – RightSaidFred

+0

Chromeに「プロファイル」タブはありませんか? – RightSaidFred

答えて

2

入力フィールドの各キーを押すごとにイベントが発生するように聞こえます。あなたが行うことができます もの:

  1. Chromeのプロファイラーがニーズに合わない場合は、かなりまともであるFirebugのか、IE9のプロファイラを試してみてください。 IE9では、各関数呼び出しに費やされたCPU時間を確認できます。
  2. フィールドからハンドラーを1つずつ一時的に除去し、パフォーマンスの変化を観察します。

どうすればいいのか教えてください!

+0

ハンドラーが発砲しているのは間違いありませんが、フィールドには何も付いていません。すべてのクロムのタイムラインとプロファイラは、jquery内の一部のコードが起動していることがわかります。非常に奇妙な。 – Marcin

+0

おそらくクライアントサイドの検証が始まっているでしょう。 –

+0

クライアント側の検証は書いていません。 – Marcin

4

Webkitには「プロファイル」オプションがあります。デベロッパーツール(ctrl + shift + i)を開き、 'Profiles'をクリックします。そこから、レコードボタン(円)が下部に表示されます。それをクリックし、通常どおりにページを使用してください。もう一度クリックすると、関数呼び出しのタイムラインを停止して調べることができます。

は、別の方法としては、個別に使用したベンチマーク機能ができます。

console.time("Some label"); 
console.timeEnd("Some label"); 
3

私は、これらの目的のために使用しますfirebug。それにはprofilerが含まれています。

1

この目的のために私はUX Profilerを作成しました。ユーザーアクション(クリック、キー入力など)の結果として起こったすべてのイベントを追跡してグループ化し、そのパフォーマンスを測定します。したがって、ボトルネックがどこにあるのかを簡単に確認できます。

+0

あなたの前のコメントが削除されました。これは質問に対する答えとして適切です。 – Marcin

+0

元に戻してください! –

関連する問題