ホームページ ウェブフロントエンド jsチュートリアル フロントエンド開発エンジニアは、次の 3 つのパフォーマンス指標に注意を払う必要があります。

フロントエンド開発エンジニアは、次の 3 つのパフォーマンス指標に注意を払う必要があります。

Nov 18, 2017 pm 02:06 PM
焦点を当てる エンジニア

資格のあるフロントエンド開発エンジニアとして、注意を払う必要があるいくつかのパフォーマンス指標をご存知ですか?今日はフロントエンドエンジニアとして注目すべき3つの指標をわかりやすくご紹介します

1. ページの応答時間については、有名な「2-5-8原則」があります。ユーザーがページにアクセスしたとき:

応答が 2 秒以内に受信される場合、システムは応答が非常に速いと感じます

応答が 2 ~ 5 秒の場合、システムの応答速度は問題ありません。

応答が 5 の場合、8 秒以内に応答が受信されると、システムは応答速度が非常に遅いと感じますが、許容範囲内です。

8 秒を超えても応答が受信されない場合、ユーザーはシステムがひどいと感じ、サイトを離れるか、2 番目のリクエストを開始するかを選択します。

Web サイトがユーザーを獲得したい場合、Web サイトの速度と安定性が最優先事項です。

さまざまなフロントエンド監視プラットフォームから、ページの多くのパフォーマンス指標を取得できます。この記事では、いくつかの重要な指標を紹介し、対応する最適化のアイデアを示します。

2. レンダリング開始時間


この時点は、ブラウザがページの描画を開始することを示し、その前にページが白い画面になるため、白い画面時間とも呼ばれます。

この時点は、レンダリング開始までの時間 = TTFB (最初のバイトまでの時間) + TTDD (

ドキュメントのダウンロードまでの時間) + TTHE (ヘッドエンドまでの時間) という式で表すことができます。このうち、TTFB はブラウザーがリクエストを開始してサーバーが最初のバイトを返すまでの時間を表し、TTDD はサーバーから HTML ドキュメントをロードする時間を表し、TTHE はドキュメントヘッダーの解析を完了するのに必要な時間を表します。高度なブラウザには、この時点のポイントを取得するための対応する 属性 があります。 Chrome は chrome.loadTimes().firstPaintTime で取得でき、IE9+ は Performance.timing.msFirstPaint で取得できます。サポートされていないブラウザでは、上記の式に従ってヘッダー リソースが読み込まれる瞬間を取得することで、おおよその値をシミュレートできます。 。レンダリング時間の開始が速くなると、ユーザーはより速くページを表示できるようになります。

現時点での最適化には次のものが含まれます:

1) サーバーの応答時間、サーバー側の出力をできるだけ早く最適化します

2) HTML ファイルのサイズを削減します

3) ヘッダーのリソースを削減し、本文にスクリプトを配置するようにします

DOM Ready


この時点では、DOM 解析が完了しており、リソースがロードされていないことを示します。この時点で、ユーザーによるページの操作はすでに可能です。これは、TimeTo Dom Ready = TTSR(Time To Start Render) + TTDC(Time To Dom Created) + TTST(Time To Script) という式で表すことができます。 TTSR は上で紹介しましたが、TTDC は DOM ツリーの作成にかかる時間を表します。 TTST は、BODY 内のすべての

static スクリプトの読み込み時間と実行時間を表します。高度なブラウザーには、これに対応する DOMContentLoaded イベント があります。DOMContentLoaded イベントを説明する MDN のドキュメントは次のとおりです。

DOMContentLoaded イベントは、スタイルシート、画像、 (load イベントを使用して、完全にロードされたページを検出できます)。詳細な仕様については、W3C の HTML5 仕様を参照できます。 MDN ドキュメントから、このイベントは主に DOM ドキュメントの読み込みと解析の完了を参照していることがわかります。非常に単純に見えますが、DOMContentLoaded イベントのトリガーは CSS と JS に密接に関連しています。クリティカル レンダリング パス (クリティカル レンダリング パス) という用語を使用して説明します。DOMContentLoaded に対するクリティカル レンダリング パスの影響については、記事 [クリティカル レンダリング パス] で詳しく説明されています。

DOMContentLoaded イベントをサポートしていないブラウザでは、シミュレーションを通じて近似値を取得できます。主なシミュレーション方法は次のとおりです:

1) 低バージョンの Webkit カーネル ブラウザは document.readyState をポーリングすることでこれを実現できます

2) IE では、実装に使用できるようになるまで、setTimeout を通じて documentElement の doScroll メソッドを継続的に呼び出すことができます

具体的な実装方法は、主流のフレームワーク (jquery など) の実装を参照できます。 DOM Ready 時点は、ユーザーがページを操作できることを意味するため、この時点での最適化には以下が含まれます:

1) ノードをできるだけ少なくし、DOM 構造の複雑さを軽減します。ネストが深すぎます

2) キーのプレゼンテーション パスを最適化します

3. 最初の画面時間

この時間ポイントは、ユーザーが最初の画面ページを表示した時間を表しますが、一般的には取得が困難です。 、近似値はシミュレーション時間を通じてのみ取得できます。一般的なシミュレーション方法は次のとおりです:

1) スクリーンショットを継続的に取得し、スクリーンショットが変化しなくなったら、それを最初のスクリーン時間とみなすことができます。 webPagetest の Speed Index アルゴリズムを参照できます。2) 一般に、最初の画面に影響を与える主な要素は、ページが読み込まれた後、画像が最初の画面にあるかどうかを判断します。 , そして、表示するのに最も遅い読み込み時間を見つけます。もちろん、その他の詳細についても考慮する必要があります。詳細については、「7 日間でフロントエンドのパフォーマンス監視システムを構築する」を参照してください。

1) の最初の画面の表示。ページは js コードに依存すべきではなく、js は実行後またはロード後にできるだけ domReady に配置する必要があります

2) 最初の画面外の画像の遅延読み込み

3) 最初の画面の構造はできるだけシンプルにし、最初の画面外の CSS は遅延読み込みできるようにする

onload

この時点はwindow.onload イベントがトリガーされ、元のドキュメントと参照されたすべてのコンテンツがロードされたことを表します。ユーザーにとって最も明白な感覚は、ブラウザー タブのロード状態が終了したことです。

現時点での最適化方法は、

1) リソースリクエスト数とファイルサイズを削減する

2) onLoad の後に非初期化スクリプトを配置して実行する

3) 必要のないスクリプトを非同期ロードする同期

Web サイト全体のパフォーマンスを最適化するには、ページをオンロードするときにプリロードを実行し、他のページが使用する必要があるリソースをプリロードすることを検討できます。

上記の記事を読んで、フロントエンド開発の旅に役立つことを願っています。

関連書籍:

フロントエンド JS の面接での質問

実践的な Web フロントエンド JS および UI フレームワークの紹介

Web フロントエンドの知識体系のまとめ

以上がフロントエンド開発エンジニアは、次の 3 つのパフォーマンス指標に注意を払う必要があります。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Weibo で私の注意が他の人に気づかれないのはなぜですか? -Weiboの訪問者記録を確認するにはどうすればよいですか? Weibo で私の注意が他の人に気づかれないのはなぜですか? -Weiboの訪問者記録を確認するにはどうすればよいですか? Mar 18, 2024 am 11:22 AM

Weibo で私の注意が他の人に気づかれないのはなぜですか?他の人にフォローしていることが分からないように、ブロガーを「静かにフォローする」グループに分類するだけです。 1. 携帯電話で Weibo を開き、ホームページの [フォロー] をクリックします。 2.「マイグループ」の[静かにフォローする]をクリックします。 Weibo の訪問者記録を確認するにはどうすればよいですか? 1. Weibo でテストされている訪問者記録機能は、現在 SVIP と VVIP のみに公開されており、一部のユーザーのみに公開されています。 2. ユーザーはパーソナルセンターの下の[その他の機能]に訪問者記録の入り口があり、訪問者数、訪問者、およびより頻繁に訪問する人々を確認できます。 3. 本機能はSVIPおよびVVIPユーザーのみが利用できる機能であり、一般ユーザーおよび一般会員ユーザーは一時的に利用できなくなります。 4. つまり、Weibo テスト訪問者

「コリンズ辞典」が2023年にイギ​​リスで最も流行った単語を発表:AI 「コリンズ辞典」が2023年にイギ​​リスで最も流行った単語を発表:AI Nov 02, 2023 am 08:13 AM

【環球時報総合報道】10月31日の英『ガーディアン』紙の報道によると、「コリンズ辞典」は2023年に英国で最も話題になった言葉に人工知能(AI)を選んだ。コリンズ・パブリッシャーズは、「AI」を今年の言葉に選んだのは、AIが「非常に急速に成長」しており、この頭字語の使用量が過去1年間で4倍になっているためだと述べた。コリンズ辞書は、「AI」を「人間の心理的機能をモデル化するためのコンピューター プログラムの使用」と定義しています。出版社のゼネラルマネージャーであるアレックス・ビークロフト氏は、「AI」が間違いなく 2023 年の焦点となるテーマであると語った。日常のテクノロジーとして生きています。」

Weiboホームページにフォロー検知を追加する方法_Weiboでのフォロー検知方法の設定紹介 Weiboホームページにフォロー検知を追加する方法_Weiboでのフォロー検知方法の設定紹介 Mar 30, 2024 pm 12:41 PM

1. Weiboに入ったら、[自分]をクリックしてパーソナルセンターに入ります。 2. [その他の機能カード]を選択します。 3. Weiboフォローリストを見つけて、画像内の[追加]を選択します。 4. 次に、次の検出が機能カードに追加されていることがわかり、ここをクリックして個人情報を検出できるようになります。

Javaエンジニアってどんな仕事をするの? Javaエンジニアってどんな仕事をするの? Dec 22, 2023 pm 04:46 PM

Java エンジニアの責任: 1. Java エンジニアは、顧客または企業のニーズを分析および理解し、これらのニーズに基づいてソフトウェア ソリューションを設計する責任があり、要件の理解の正確さと完全性を確保するために顧客またはチーム メンバーとコミュニケーションをとる必要があります。 2. Java エンジニア さまざまな Java 開発ツールやフレームワークに精通しており、習得している必要があります; 3. Java エンジニアは、MySQL、Oracle、SQL Server などのデータベース管理システムにも精通している必要があります; 4. 開発プロセス中、Javaエンジニアはシステムのテストやデバッグなどを行う必要があります。

フロントエンドエンジニアの責任分析:主な仕事は何ですか? フロントエンドエンジニアの責任分析:主な仕事は何ですか? Mar 25, 2024 pm 05:09 PM

フロントエンドエンジニアの責任分析:主な仕事は何ですか?インターネットの急速な発展に伴い、フロントエンドエンジニアは非常に重要な専門的役割を果たし、ユーザーとWebサイトアプリケーションの間の橋渡しとして重要な役割を果たします。では、フロントエンドエンジニアは主に何をするのでしょうか?この記事では、フロントエンド エンジニアの責任を分析して調べてみましょう。 1. フロントエンド エンジニアの基本的な責任 Web サイトの開発と保守: フロントエンド エンジニアは、Web サイトの HTML、CSS、JavaScr の作成など、Web サイトのフロントエンド開発を担当します。

Douyin アカウントをフォローする価値があるかどうかを判断するにはどうすればよいですか?アカウントが制限されているかどうかをテストするにはどうすればよいですか? Douyin アカウントをフォローする価値があるかどうかを判断するにはどうすればよいですか?アカウントが制限されているかどうかをテストするにはどうすればよいですか? Apr 01, 2024 pm 05:37 PM

ソーシャルメディアの台頭により、Douyinは若者の間で最も人気のあるショートビデオプラットフォームの1つになりました。膨大な数のDouyinアカウントの中には、内容が豊富で興味深いアカウントも数多くありますが、中には低品質で表面的なアカウントもあります。では、Douyin アカウントが注目に値するかどうかをどのように判断すればよいのでしょうか? 1.Douyin アカウントが注目に値するかどうかを判断するにはどうすればよいですか?アカウントが注目に値するかどうかは、コンテンツの質に基づいて判断できます。高品質の Douyin アカウントは通常、視聴者に幸福、啓発、思考をもたらす貴重なコンテンツを提供します。これらのコンテンツは、注意深く編集された短くて面白いビデオである場合もあれば、人生のヒント、食べ物作り、旅行体験の共有などである場合もあります。これらのコンテンツは、慎重に編集された短くて面白いビデオである場合もあれば、人生のヒント、食べ物作り、旅行などである場合もあります。

Weibo をフォローして賞品を受け取る方法_Weibo をフォローして賞品を受け取る方法 Weibo をフォローして賞品を受け取る方法_Weibo をフォローして賞品を受け取る方法 Mar 30, 2024 pm 12:21 PM

1.まずWeiboをクリックします。 2. 次に、下の「私」をクリックし続けて、次のタスクを実行することを選択します。 4. フォローする自分のキャラクターを選択します。 5. 5 キャラクターをフォローしたら賞品を受け取ります。 6. Weibo の注目から報酬を受け取ります。

Go言語開発エンジニア必読:大手企業の採用状況を総まとめ! Go言語開発エンジニア必読:大手企業の採用状況を総まとめ! Mar 04, 2024 pm 09:21 PM

Go言語開発エンジニア必読:大手企業の採用状況を総まとめ!インターネット業界の急速な発展に伴い、Go 言語は効率的で安定した使いやすいプログラミング言語として、企業でますます支持されています。多くの大手インターネット企業が Go 言語開発エンジニアの採用を開始していますが、この分野に携わろうとする開発者が市場の需要をよりよく理解するために、この記事ではいくつかの有名企業の採用状況を紹介します。 Tencent Technology: 中国で最も影響力のあるテクノロジー巨人の 1 つとして、Tencent は技術チームを継続的に拡大してきました。

See all articles