フロントエンドのインタビューの中で最も完全なセット(3)

まず、完全に表示されたページから、ページのロードにURLを入力します。

 

 出典:ワットww.yinxiangit.com

単純な答え:

1.実際のIPを見つけるために、ブラウザのURL要求DNSルックアップによると、サーバーへの要求を開始します。

 

2.バックエンド処理にサーバーが返すデータが終了すると、ブラウザが受け取るファイル(HTML、JS、CSS、画像など)

 

解析のためのリソース(HTML、JS、CSSなど)にロード3.ブラウザは、(例えばHTMLのDOMなど)適切な内部データ構造を確立します。

 

4.完了するために、ページのレンダリング、リソースファイルをロードするために解決します。

 

 

詳細な回答:

ブラウザがURLに対処する方法に従い、Web上のhttpプロトコルがあるかどうかを判断するために、分析のための要求を処理するスレッドを開きます。

 

2.ブラウザは、WebViewのloadUrl方法としてカーネルの対応するメソッドを呼び出します。

 

3.分析は、URL、IPアドレスのDNSを取得し、UA送られたその他の情報は、第2のGETリクエストを提供します。

セッションのためのHTTPプロトコルは、クライアントは、ヘッダ(要求ヘッダ)を送信します。

 

4.このようにApache、Tomcatの、Node.jsのピアサーバーなどのWebサーバー、上のWebサーバーに移動します。

 

5.このようなPHP、Java(登録商標)、JavaScriptが、パイソンなど、対応する要求処理を見つけるなどのバックエンド・アプリケーションに展開。

 

ブラウザが対応するキャッシュリソースが存在し、ここに訪れた場合6.プロセスは、フィードバックヘッダーを終了し、サーバとの対比であろうが最後に変更された、一貫した戻る304。

 

7.ブラウザキャッシュを使用しながら、HTML文書(応答ヘッダ、ステータスコード200)をダウンロード開始します。

文書ツリーは、所望の特定のMIMEタイプのファイル(例えばCSS等、JS)マーカ要求を確立し、そしてクッキーを設定されています。

 

DOM DOMに基づいて、JSのDOM APIの操作をレンダリング8のスタートページは、ページの表示を完了するために、イベント等、結合を実行します。

 

第二に、通常はどのようにあなたのプロジェクトを管理するには?

 

1.事前のチームが良いグローバルスタイル(globe.css)、符号化モード(UTF-8)などを決定する必要があります。

2.書き込み習慣が一貫していなければならない(例えば、単一線のスタイルを書かれている、書き込みの継承されたタイプに基づいています)。

3.寸法スタイルによって製造し、モジュールは速やかにラベル(ローカルキースタイルの呼び出しをマークされている)しています。

4.ページは、(例えば、開始と終了ページモジュール)をマーク。

HTMLパラレルサブフォルダのストレージを持つ5.CSSは、ユニティ(例えばstyle.cssに)と命名しました。

英語の翻訳へJS関数対象にちなんで名付けられたフォルダ内の6.JSポイント。

 

第三に、ページがどのように操作を再構築しますか?

 

復興サイト:前提の外部動作を変更することなく、構造を簡素化し、読みやすさを追加し、サイトのフロントエンドで一貫した動作を維持します。
すなわち、拡張されながら一貫したUIを維持し、UIを変更することなく、サイトを最適化、です。

 

復興のための伝統的なサイトの場合、通常は次のとおりです。
テーブル(表)DIV + CSSレイアウトを変更しました
(たとえば、IE6有効なものとして、サブ標準のCSSにするために)フロントエンド現代のブラウザと互換性のサイトに
最適化されたモバイルプラットフォームのため
にあるのためにSEO最適化された
復興の側面が考慮されるべきで、深さのウェブサイト

 

コード間の結合を減少させます

柔軟性を維持するためのコードましょう
仕様に厳密に従って、コードの記述
デザインスケーラブルなAPIを
代わりに古いフレームワーク、言語(例えばVB)の
ユーザーエクスペリエンス強化
も復興に含まれ、通常の速度に合わせて最適化いえば

圧縮JS、CSS、画像、他のフロントエンドリソース(通常はサーバーによって解決)
パフォーマンスの最適化プログラム(例えば、データの書き込み)
リソースの負荷加速するCDNを使用して
JS DOMがために最適化され
たファイルのキャッシュHTTPサーバ

 

第四に、どのようなMVVMフレームワーク?これと他のフレームワーク(jqueryの)であるとの違いは何ですか?どのようなシーンのために?

 

A 2つを接続する、モデルビュー+ +ビューモデルフレーム、データ・モデル・モデル、ビューモデル

 

差:代わりに、ノードデータの動作レベルを介してディスプレイに表示するVUEデータドライバ。

シーン:より多くのデータ操作のシナリオ、より便利に

 

ファイブは、反応し、Vueの違いは何ですか?

地図データ構造を設定します()

ES6は、配列のようにそれを設定し、新たなデータ構造を提供していますが、メンバーの値は、重複する値が一意ではありません。

ES6は、地図データ構造を提供します。これは、オブジェクトだけでなく、キーと値のペアのセットに似ているが、「キー」の範囲は、文字列に限定されるものではなく、(オブジェクトを含む)の値の各種のキーとして使用することができます。つまり、オブジェクトの構造が提供 - 「文字列値」に対応し、地図には、構造を提供 - 、「値」に対応するハッシュを達成するためのより良い構造です。

第六に、違いWeakMap、および地図?

実質的に同様の構造地図WeakMap構造は、唯一の違いは、それが唯一のキーとして他の種類の値を受け入れない、(ヌル以外)キーなどのオブジェクトを受け入れることで、キーが尖っ、ガベージコレクションが含まれていません。

 

最大の利点は、メモリリークを防ぐWeakMapです。唯一のキーと参照などのオブジェクトWeakMap、それはガベージコレクタのうち、リサイクルされます。

 

WeakMap所有と同様のセット(キー、値)、地図、(キー)を取得、(キー)を削除し、(キー)を有し、clear()メソッド、反復に関連するプロパティとメソッドとは何の関係も。

七つの再配置と再描画

ツリーの一部(または全部レンダリングツリー)と再計算される必要があるノードのサイズを分析する必要性をレンダリングします。これは、再配置と呼ばれています。最初のページのレイアウト - 少なくとも転位があることに注意してください。

ノードの幾何学的特性に起因したスタイルに変更された要素の背景色を変更する、例えば、変更またはされ、画面の一部を更新する必要があります。このアップデートは、再描画と呼ばれています

 

八、優雅な劣化やプログレッシブ・エンハンスメントは何ですか?

 

優雅な劣化:

Webサイトは、すべての近代的なブラウザで動作することができ、

ユーザーは、古いブラウザを使用している場合は、

コードは、彼らが働くことができるかどうかを確認し、

ユニークなIEのボックスモデルのレイアウトの問題に起因して、

ハックIEの異なるバージョンのための実践は、優雅な劣化を持っていました、

ブラウザの機能をサポートすることができない人のために候補者を増加させ、

だから、何らかの方法での経験で劣化した古いブラウザではなく、完全に無効ではないでしょう。

 

プログレッシブ・エンハンスメント:

すべてのブラウザでサポートされている基本的な機能から始めて、

徐々に、唯一の唯一の近代的なブラウザでサポートされている機能を追加

ブラウザの追加的なスタイルと機能のためのページ健全な基盤を高めるために、

場合は、ブラウザのサポートは、彼らが自動的にレンダリングされ、役割を果たします。

おすすめ

転載: www.cnblogs.com/bingerger/p/11516825.html