ホームページ >ウェブフロントエンド >jsチュートリアル >jsパフォーマンス最適化スキル_javascriptスキル

jsパフォーマンス最適化スキル_javascriptスキル

WBOY
WBOYオリジナル
2016-05-16 15:29:071164ブラウズ

パフォーマンスの最適化: つまり、システムの動作の正確さに影響を与えることなく、システムの実行を高速化し、特定の機能の完了にかかる時間を短縮することです

http:ハイパーテキスト プロトコル

その最上位層は、アプリケーション層、トランスポート層、ネットワーク層、物理層です
リクエスト情報: リクエスト行、リクエストヘッダー、空行、メッセージ本文
応答情報: ステータス行とステータスコード

値型の ToString メソッドを使用します:

文字列を連結するとき、文字列に数値を直接追加するために「」記号がよく使用されます。この方法は単純で正しい結果が得られますが、さまざまなデータ型が関係しているため、数値を文字列に追加する前にボックス化操作を通じて数値を参照型に変換する必要があります。ただし、このタイプの処理を実行すると、新しいオブジェクトがマネージド ヒープに割り当てられ、元の値が新しく作成されたオブジェクトにコピーされるため、ボックス化操作はパフォーマンスに大きな影響を与えます。値型の ToString メソッドを使用すると、ボックス化操作が回避され、アプリケーションのパフォーマンスが向上します。

HTML コントロールを選択してみてください:

クライアントで実装できる機能はクライアント(JavaScriptに精通している)で実装されるため、サーバーへの負荷が軽減されます。データ コントロールの選択順序:Repeater、DataList、DataGrid。

データベース接続を確立した後は、本当に操作が必要な場合にのみ接続を開き、使用後はすぐに閉じることで、データベース接続が開いている時間を最小限に抑え、接続制限を超えないようにすることができます。

文字列操作のパフォーマンスの最適化

(1) 値型のToStringメソッドを使用します。

文字列を連結するとき、文字列に数値を直接追加するために「」記号がよく使用されます。この方法は単純で正しい結果が得られますが、さまざまなデータ型が関係するため、数値を文字列に追加する前にボックス化操作によって数値を参照型に変換する必要があります。ただし、このタイプの処理を実行すると、新しいオブジェクトがマネージド ヒープに割り当てられ、元の値が新しく作成されたオブジェクトにコピーされるため、ボックス化操作はパフォーマンスに大きな影響を与えます。値型の ToString メソッドを使用すると、ボックス化操作が回避され、アプリケーションのパフォーマンスが向上します。

(2) StringBuilder クラスを使用する

String クラスのオブジェクトは不変です。String オブジェクトの再割り当ては、基本的に String オブジェクトを再割り当てし、そのメソッド ToString によってパフォーマンスが大幅に向上するわけではありません。文字列を操作する場合は、.NET 名前空間が System.Text である StringBuilder クラスを使用するのが最善です。このクラスは新しいオブジェクトを作成しませんが、Append、Remove、Insert などのメソッドを通じて文字列を直接操作し、ToString メソッドを通じて操作結果を返します。

サーバーへの不必要な往復を回避します

Page.IsPostBack を使用して、ラウンドトリップの不必要な処理を回避します。
Web フォーム ページ フレームワークの時間とコードの節約機能を活用したいと考えている場合が多いですが、状況によっては、ASP.NET サーバー コントロールやポストバック イベント処理の使用が不適切な場合もあります。通常、サーバーへのラウンドトリップを開始する必要があるのは、データを取得または保存するときだけです。ほとんどのデータ操作は、これらの往復中にクライアント上で実行できます。

js を圧縮

ページ内の js 呼び出しのケースは、異なるファイルがキャッシュされるのを避けるために一貫している必要があります。ページ上の js が利用可能な場合は、それをユニット ファイルとして記述して呼び出します。画像に使用する JPEG を減らし、Web ページの圧縮に gzip を使用してページの表示を高速化します。

呼び出し元のjsはできるだけページ下部に記述し、ビューステートもページ下部に書き換えたり、ビューステートを圧縮したりすることができます。条件は、ビューステートを使用する必要があることです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。