フロントエンドエンジニアに面接するときによくある質問を紹介しましたが、中には答えのない質問もありますので、暇なときに考えてみてください
1. どのブラウザがテストに使用されますか?どのようなカーネル (レイアウト エンジン) がありますか?
(Q1) ブラウザ: IE、Chrome、FireFox、Safari、Opera。 (Q2) カーネル: Trident、Gecko、Presto、Webkit。2. インライン要素とブロックレベル要素の違いを教えてください。インラインブロック要素の互換性の使用? (IE8以下)
(Q1) インライン要素: 水平方向に配置され、ブロックレベルの要素を含めることはできません。 幅の設定は無効です。高さは無効です (line-height は設定可能)。無効であり、上下のパディングも無効です。 ブロックレベルの要素: それぞれが 1 行を占め、垂直に配置されます。新しい行で始まり、改行で終わります。 (Q2) 互換性: display:inline-block;*display:inline;*zoom:1;3. フロートをクリアする方法は何ですか?どちらが良い方法でしょうか?
(Q1)(1) 親 div は高さを定義します。 (2) 最後に空のdivタグclear:bothを追加します。 (3) 親 div は、疑似クラス: after とzoom を定義します。 (4) 親 div は overflow:hidden を定義します。 (5) 親 div は overflow:auto を定義します。 (6) 親 div も浮動しているため、幅を定義する必要があります。 (7) 親 div は、display:table を定義します。 (8) 最後にbrタグclear:bothを追加します。 (Q2) より良い方法は 3 番目の方法で、多くの Web サイトで使用されています。4. ボックス サイズ設定でよく使用される属性は何ですか?それぞれの機能は何ですか?
(Q1)box-sizing: content-box|border-box|inherit;(Q2)content-box: 幅と高さは要素のコンテンツ ボックスにそれぞれ適用されます。要素のパディングと境界線を幅と高さの外側に描画します (要素のデフォルト効果)。 border-box: 要素で指定されたパディングとボーダーは、設定された幅と高さの範囲内で描画されます。コンテンツの幅と高さは、それぞれ設定された幅と高さからボーダーとパディングを減算することによって取得されます。5. Doctype の役割は何ですか?標準モードと互換モードの違いは何ですか?
(Q1) は、このドキュメントを解析するためにどのドキュメント標準を使用するかをブラウザのパーサーに指示します。 DOCTYPE が存在しないか、形式が正しくない場合、ドキュメントは互換モードで表示されます。 (Q2) 標準モードの書式設定と JS 操作モードは、ブラウザーでサポートされる最高の標準で実行されます。互換モードでは、サイトが機能しなくなるのを防ぐために、古いブラウザーの動作をシミュレートして、緩やかな下位互換性のある方法でページが表示されます。6. HTML5 では だけを記述する必要があるのはなぜですか?
HTML5 は SGML に基づいていないため、DTD を参照する必要はありませんが、ブラウザーの動作を規制する (ブラウザーを本来の方法で実行させる) ために doctype が必要です。 そして、HTML4.01 は SGML に基づいているため、ドキュメントで使用されるドキュメント タイプをブラウザーに伝えるために DTD を参照する必要があります。7. ページにスタイルをインポートする場合、link と @import の使用の違いは何ですか?
(1) リンクは CSS のロードに加えて、RSS の定義、rel 接続属性の定義などにも使用できます。一方、@import は CSS をロードするためにのみ使用できます。 ; (2) ページが読み込まれると同時にリンクも読み込まれ、@import で参照される CSS はページが読み込まれるまで待機してから読み込まれます。これは IE5 以降でのみ認識できますが、リンクは XHTML タグであり、互換性の問題はありません。8. ブラウザカーネルについてのあなたの理解を紹介してください。
主に、レンダリング エンジン (レイアウト エンジニアまたはレンダリング エンジン) と JS エンジンの 2 つの部分に分かれています。
レンダリング エンジン: Web ページのコンテンツ (HTML、XML、画像など) を取得し、情報を整理し (CSS の追加など)、Web ページの表示方法を計算して、モニターやプリンターに出力します。 ブラウザカーネルが異なれば、Web ページの文法解釈も異なるため、レンダリング効果も異なります。 Web コンテンツを編集および表示するすべての Web ブラウザ、電子メール クライアント、およびその他のアプリケーションにはカーネルが必要です。 JS エンジン: JavaScript を解析して実行し、Web ページ上で動的な効果を実現します。 当初、レンダリング エンジンと JS エンジンには明確な区別はありませんでしたが、その後、JS エンジンはますます独立し、カーネルはレンダリング エンジンのみを指す傾向になりました。9. html5の新機能は何ですか? HTML5 の新しいタグによるブラウザーの互換性の問題にどう対処するか? HTML と HTML5 を区別するにはどうすればよいですか?
(Q1)
HTML5 はもはや SGML のサブセットではなく、主に画像、場所、ストレージ、マルチタスク、その他の機能の追加に関するものです。 (1) ペイント キャンバス; (2) メディア再生用のビデオおよびオーディオ要素; (3) ローカル オフライン ストレージ データの長期保存。ブラウザを閉じてもデータは失われません。(4) sessionStorage データはブラウザが閉じられると自動的に削除されます。
(5) 記事、フッター、ヘッダー、ナビゲーション、セクションなどのより適切なセマンティクスを持つコンテンツ要素。
(6) フォーム コントロール、カレンダー、日付、時刻、電子メール、URL、検索;
(7) 新しいテクノロジー Webworker、WebSocket、Geolocation;
(Q2)
IE8/IE7/IE6 は document.createElement メソッドによって生成されたタグをサポートします
この機能を使用して、これらのブラウザで HTML5 の新しいタグをサポートすることができます。
ブラウザが新しいタグをサポートした後、タグのデフォルトのスタイルを追加する必要があります。
もちろん、html5shim、
10 などの成熟したフレームワークを直接使用することもできます。自分自身について説明する HTML セマンティクスを理解していますか?
正しいハッシュタグを使って正しいことをしましょう。
HTML セマンティクスはページのコンテンツを構造化し、構造を明確にし、ブラウザーや検索エンジンが解析しやすくします。
スタイル CSS がない場合でも、ドキュメント形式で表示され、読みやすくなります。
検索エンジン クローラーは、HTML タグに基づいて各キーワードのコンテキストと重みを判断します。これは SEO にとって有益です。
ソース コードを読む人が Web サイトを分割しやすくなり、読みやすくなります。 、維持し、理解します。
JavaScript
1. jsの基本的なデータ型を紹介します
Unknown、Null、Boolean、Number、String
2. jsの組み込みオブジェクトとは何ですか?
データカプセル化クラスオブジェクト: Object、Array、Boolean、Number、String
その他のオブジェクト: Function、Arguments、Math、Date、RegExp、Error
3. このオブジェクトの理解
これは常にfunction 直接呼び出し元 (間接呼び出し元ではありません)。
新しいキーワードがある場合、これは new から出てくるオブジェクトを指します。
イベントの場合、これはイベントをトリガーしたオブジェクトを指します。 IE のattachEvent これは常にグローバル オブジェクト Window を指します。
4. eval は何をしますか?
その機能は、対応する文字列を JS コードに解析して実行することです。
安全ではなく、非常にパフォーマンスを消費する eval の使用は避けるべきです (JS ステートメントに解析するために 1 回、実行に 1 回)。 。
JSON文字列からJSONオブジェクトに変換する場合、eval, var obj =eval('('+ str +')')を使用できます。
5. DOM でノードを追加、削除、移動、コピー、作成、検索する方法
// 创建新节点 createDocumentFragment() //创建一个DOM片段 createElement() //创建一个具体的元素 createTextNode() //创建一个文本节点 // 添加、移除、替换、插入 appendChild() removeChild() replaceChild() insertBefore() //在已有的子节点前插入一个新的子节点 // 查找 getElementsByTagName() //通过标签名称 getElementsByName() //通过元素的Name属性的值(IE容错能力较强,会得到一个数组,其中包括id等于name值的) getElementById() //通过元素Id,唯一性
6. null と unknown の違いは何ですか?
null は「なし」を表すオブジェクトであり、数値に変換すると 0 になります。未定義は「なし」を表すプリミティブ値で、数値に変換すると NaN になります。
未定義:
(1) 変数が宣言されているが値が割り当てられていない場合、その変数は未定義と等しくなります。
(2) 関数呼び出し時に、提供されるべきパラメータが提供されず、パラメータが未定義に等しい。
(3) オブジェクトには属性が割り当てられておらず、この属性の値は未定義です。
(4) 関数が値を返さない場合は、デフォルトで未定義を返します。
null:
(1) 関数のパラメータとしては、関数のパラメータがオブジェクトではないことを意味します。
(2) は、オブジェクト プロトタイプ チェーンのエンドポイントとして機能します。
7. new 演算子は具体的に何をするのでしょうか?
(1) 空のオブジェクトを作成し、this 変数はそのオブジェクトを参照し、関数のプロトタイプも継承します。
(2) thisが参照するオブジェクトにプロパティとメソッドを追加します。
(3) 新しく作成したオブジェクトは this で参照され、最後に暗黙的に this が返されます。
8. JSONをご存知ですか?
JSON (JavaScript Object Notation) は軽量のデータ交換形式です。これは JavaScript のサブセットに基づいています。データ形式はシンプルで読み書きが簡単で、占有帯域幅もほとんどありません。
形式: キーと値のペアを使用します。例: {'age':'12', 'name':'back'}
9 call() と apply() の違いと機能は何ですか?
apply() 関数には 2 つのパラメーターがあります。最初のパラメーターはコンテキストで、2 番目のパラメーターはパラメーターの配列です。コンテキストが null の場合は、代わりにグローバル オブジェクトが使用されます。
例: function.apply(this,[1,2,3]);
call() の最初のパラメータはコンテキストで、後続のパラメータ シーケンスはインスタンスによって渡されるパラメータ シーケンスです。
例: function.call(this,1,2,3);
10. UA を取得するには?
function whatBrowser() { document.Browser.Name.value=navigator.appName; document.Browser.Version.value=navigator.appVersion; document.Browser.Code.value=navigator.appCodeName; document.Browser.Agent.value=navigator.userAgent; }
その他
1. HTTP ステータス コードについて何を知っていますか?
100 続行 通常、post リクエストを送信するとき、サーバーは確認を示す http ヘッダーを送信した後、この情報を返し、その後、特定のパラメーター情報を送信します
200 OK 通常の返信情報
201 Created リクエストは成功しました。とサーバー 新しいリソースが作成されました
202 Accepted サーバーはリクエストを受け入れましたが、まだ処理していません
301 Moved Permanently リクエストされた Web ページは新しい場所に永続的に移動されました。
302 一時的なリダイレクトが見つかりました。
303 「その他の一時リダイレクト」を参照し、新しい URI をリクエストするには常に GET を使用してください。
304 未変更 要求された Web ページは、最後の要求以降変更されていません。
400 不正なリクエスト サーバーはリクエストの形式を理解できないため、クライアントは同じコンテンツを使用してリクエストを再度開始しようとしてはいけません。
401 Unauthorized リクエストは承認されていません。
403 アクセス禁止 アクセスは禁止されています。
404 Not Found URI に一致するリソースが見つかりませんでした。
500 内部サーバーエラー 最も一般的なサーバー側エラー。
503 Service Unavailable サーバーは一時的にリクエストを処理できません (過負荷またはメンテナンスが原因である可能性があります)。
2. どのようなパフォーマンス最適化方法がありますか?
(1) http リクエストの数を減らす: CSS スプライト、JS、CSS ソース コード圧縮、Web ページの Gzip、CDN ホスティング、データ キャッシュ、画像サーバー。
(2) フロントエンドテンプレート JS + データにより、HTML タグによる帯域幅の無駄が削減されます。フロントエンドは、ローカル変数を操作するたびに変数を使用してリクエストを保存する必要がなく、リクエストの数を削減します。
(3) DOM 操作の代わりに innerHTML を使用して、DOM 操作の数を減らし、JavaScript のパフォーマンスを最適化します。
(4) 設定するスタイルが多い場合は、スタイルを直接操作するのではなく、classNameを設定します。
(5) 使用するグローバル変数を減らし、DOM ノード検索の結果をキャッシュします。 IO 読み取り操作を減らします。
(6) 動的プロパティ (動的プロパティ) とも呼ばれる CSS 式 (css 式) の使用は避けてください。
(7) 画像のプリロード。スタイルシートを上部に、スクリプトをタイムスタンプ付きで下部に配置します。
3. グレースフル デグラデーションとプログレッシブ エンハンスメントとは何ですか?
正常な機能低下: Web サイトはすべての最新のブラウザーで正常に動作します。ユーザーが古いブラウザーを使用している場合、コードはブラウザーが適切に動作するかどうかを確認します。
IE の固有のボックス モデル レイアウトの問題により、IE のさまざまなバージョンにハックが実装され、機能をサポートできないブラウザの候補が追加され、古いブラウザでは何らかの形でダウングレードが発生することはありません。完全に失敗する。
段階的な機能強化: すべてのブラウザーでサポートされる基本機能から開始し、新しいブラウザーでのみサポートされる機能を段階的に追加し、基本ブラウザーに害を及ぼさない追加のスタイルと機能をページに追加します。ブラウザーでサポートされている場合、これらは自動的にレンダリングされ、機能します。
4. メモリリークを引き起こす可能性のある一般的な操作は何ですか?
メモリ リークとは、所有または必要がなくなった後も存続するオブジェクトです。
ガベージ コレクターはオブジェクトを定期的にスキャンし、各オブジェクトへの参照を持つ他のオブジェクトの数をカウントします。オブジェクトの参照が 0 である (他のオブジェクトがそれを参照していない) 場合、またはオブジェクトへの参照が循環のみである場合、オブジェクトのメモリを再利用できます。
setTimeout の最初のパラメータに関数ではなく文字列を使用すると、メモリ リークが発生します。
クロージャー、コンソールログ、ループ (2 つのオブジェクトが相互に参照し、保持する場合にループが発生します)。
5. スレッドとプロセスの違い
プログラムには少なくとも 1 つのプロセスがあり、プロセスには少なくとも 1 つのスレッドがあります。
スレッドの分割規模はプロセスの分割規模よりも小さいため、マルチスレッドプログラムの同時実行性が高くなります。
さらに、プロセスは実行中に独立したメモリユニットを持ち、複数のスレッドがメモリを共有するため、プログラムの実行効率が大幅に向上します。
スレッドは、実行中のプロセスとは依然として異なります。それぞれの独立したスレッドには、プログラム実行のエントリ ポイント、順次実行シーケンス、およびプログラムの終了ポイントがあります。ただし、スレッドは独立して実行できず、アプリケーション プログラム内に存在する必要があり、アプリケーション プログラムは複数のスレッドの実行制御を提供します。
論理的な観点から見ると、マルチスレッドの意味は、アプリケーション内で複数の実行部分を同時に実行できることです。ただし、オペレーティング システムは、プロセスのスケジューリング、管理、およびリソース割り当てを実装するために、複数のスレッドを複数の独立したアプリケーションとはみなしません。これがプロセスとスレッドの重要な違いです。
HTML
1. Doctype の役割は何ですか?厳密モードと混合モードを区別するにはどうすればよいですか?どういう意味ですか?
HTML5 なぜ だけを書く必要があるのですか?
インライン要素とは何ですか?ブロックレベル要素とは何ですか? 無効な要素とは何ですか?
ページにスタイルをインポートするときにリンクと @import を使用することの違いは何ですか?
ブラウザのコアについての理解を紹介しますか?
一般的なブラウザ カーネルは何ですか?
html5 の新機能と削除された要素は何ですか? HTML5 の新しいタグによるブラウザーの互換性の問題にどう対処するか? HTML と HTML5 を区別するにはどうすればよいですか?
HTML セマンティクスについての理解を簡単に説明してください。
HTML5 オフライン ストレージの使用方法を説明していただけますか?
ブラウザは HTML5 オフライン ストレージ リソースをどのように管理し、ロードしますか?
Cookie、sessionStorage、localStorageの違いについて説明してください。
iframe の欠点は何ですか?
ラベルの機能は何ですか?どのように使用されますか? (追加またはパッケージ化)
HTML5フォームのオートコンプリート機能をオフにするにはどうすればよいですか?
ブラウザの複数のタブ間の通信を実装するにはどうすればよいですか? (Alibaba)
webSocket はローエンドのブラウザとどのように互換性がありますか? (Alibaba)
Page Visibility API の用途は何ですか?
ページ上に円形のクリック可能領域を実装するにはどうすればよいですか?
境界線を使用せずに 1 ピクセルの高さの線を描画し、異なるブラウザーの Quirksmode および CSSCompat モードでも同じ効果を維持します。
Web ページ確認コードは何に使用されますか? どのようなセキュリティ問題を解決するために使用されますか?
titeとh1、bとstrong、iとemの違いは何ですか?
CSS
標準のCSSボックスモデルを紹介しますか? IE の下位バージョンのボックス モデルとの違いは何ですか?
CSS セレクターとは何ですか?どのようなプロパティを継承できますか?
CSS 優先アルゴリズムはどのように計算されますか?
css3 の新しい疑似クラスとは何ですか?
div を中央に配置するにはどうすればよいですか?浮動要素を中央に配置するにはどうすればよいですか?絶対に配置された div を中央に配置するにはどうすればよいですか?
表示の値は何ですか?彼らの役割を説明してください。
位置の相対位置と絶対位置の原点は何ですか?
CSS3 の新機能は何ですか?
CSS3 の Flexbox (フレキシブル ボックス レイアウト モデル) とその適用可能なシナリオについて説明してください。
純粋な CSS で三角形を作成する原理は何ですか?
全画面の Word レイアウトをデザインするにはどうすればよいですか?
よくある互換性の問題?
liとliの間にある目に見えない空白の理由は何ですか?解決策は何ですか?
一般的に使用されるブラウザの互換性は何ですか?その理由と解決策、そしてよく使われるハッキングテクニックとは?
CSS スタイルを初期化する理由。
絶対包含ブロックの計算方法は通常のフローとどう違うのですか?
CSSのvisibility属性にはcollapse属性値がありますが、これは何に使用されますか?異なるブラウザでは何が違うのでしょうか?
位置、表示、余白潰れ、オーバーフロー、フロートの機能を重ねるとどうなるでしょうか?
BFC 仕様 (ブロック フォーマット コンテキスト) について理解していますか?
CSS の重みの優先順位はどのように計算されますか?
フロートが発生する理由と、いつそれをクリアする必要があるかを説明してください。フロートをクリアする方法
モバイル レイアウトにメディア クエリを使用したことがありますか?
CSS プリプロセッサを使用しますか?あれみたいに?
CSS のパフォーマンスを最適化して向上させる方法は何ですか?
ブラウザは CSS セレクターをどのように解析しますか?
Web ページでは奇数番号または偶数番号のフォントを使用する必要がありますか?なぜ?
マージンとパディングはどのようなシナリオに適していますか?
抽象スタイルモジュールの書き方、アイデアを教えてください、実務経験はありますか? [Alibaba Air Travel インタビューの質問] 要素の垂直方向のパーセンテージ設定は、コンテナの高さを基準にしていますか?
全画面スクロールの原理は何ですか?どのような CSS プロパティが使用されますか?
レスポンシブデザインとは何ですか?レスポンシブデザインの基本原則は何ですか? IE の下位バージョンとの互換性を保つにはどうすればよいですか?
視差スクロール効果、ページごとに異なるアニメーションを作成するにはどうすればよいですか? (一番上に戻り、下にスライドして再度表示するか、一度だけ表示するか?)
::before と :after の二重コロンと単一コロンの違いは何ですか?これら 2 つの擬似要素の機能を説明します。
Chrome がパスワードを記憶した後、自動的に入力されるフォームの黄色の背景を変更するにはどうすればよいですか?
行の高さから何がわかりますか?
要素をフロートに設定した後の要素の表示値は何ですか? (自動的にdisplay:blockになります)
Chromeサポートテキストを12pxより小さくするにはどうすればよいですか?
CSS を使用してページ上のフォントをより鮮明かつ細くするにはどうすればよいですか? (-webkit-font-smoothing: antialiased;) font-style 属性には値「oblique」を割り当てることができます。 oblique とはどういう意味ですか?
position:fixed; は Android では無効です。
アニメーションを手動で記述する必要がある場合、最小時間間隔はどれくらいだと思いますか?またその理由は何ですか? (Alibaba)
display:inline-block ギャップはいつ表示されますか? (Ctrip)
overflow: スクロール時にスムーズにスクロールできない問題に対処するにはどうすればよいですか?
内部に 2 つの div を持つ高さ適応 div があり、1 つは高さ 100px で、もう 1 つは残りの高さを埋めることを願っています。
png、jpg、gif などの画像形式と、それらをいつ使用するかを説明します。 WebP について学んだことがありますか?
Cookie分離とは何ですか? (または: リソースをリクエストするときに Cookie を持たせないようにする方法)
スタイルタグを本文の後に書くのと本文の前に書くのとの違いは何ですか?
JavaScriptJavaScriptの基本的なデータ型を紹介します。
JavaScriptを書くための基本的な仕様について教えてください。
JavaScriptプロトタイプ、プロトタイプチェーンの特徴は何ですか?
JavaScriptには何種類の値がありますか? (ヒープ: プリミティブ データ型とスタック: 参照データ型)、メモリ図を描いてもらえますか?
JavaScript はどのように継承を実装しますか?
JavaScript でオブジェクトを作成する方法はいくつかありますか?
JavaScript スコープ チェーン?
This オブジェクトの理解について話します。
eval は何をしますか?
ウィンドウ オブジェクトとは何ですか? ドキュメント オブジェクトとは何ですか?
null と未定義の違いは何ですか?
一般的なイベント リスナー関数 (コンピューター テストの問題) を作成します。
[“1”, “2”, “3”].map(parseInt) 答えは何でしょうか?
イベントに関して、IEとFirefoxのイベントメカニズムの違いは何ですか? 泡立ちを止めるにはどうすればいいですか?
クロージャーとは何ですか?なぜそれを使用する必要があるのですか?
JavaScript コードの「use strict」とは何を意味しますか?
オブジェクトが特定のクラスに属しているかどうかを判断するにはどうすればよいですか?
new 演算子は具体的に何をするのですか?
ネイティブ JavaScript を使用して関数を実装したことがありますか?
JavaScriptでは、実行時にオブジェクトを検索する際にプロトタイプを検索しない関数がありますが、これは何ですか?
JSON について理解していますか?
[].forEach.call($$("*"),function(a){ a.style.outline="1px Solid #"+(~~(Math.random()*(1<<24) ))).toString(16) }) このコードの意味を説明していただけますか?
jsを遅延ロードするにはどのような方法がありますか?
Ajax とは何ですか? Ajax を作成するには?
同期と非同期の違いは何ですか?
クロスドメインの問題を解決するにはどうすればよいですか?
ページのエンコーディングと要求されたリソースのエンコーディングが一致しない場合はどうすればよいですか?
モジュール開発を行うにはどうすればよいですか?
AMD (モジュール/非同期定義) と CMD (共通モジュール定義) 仕様の違いは何ですか?
requireJS の中心原則は何ですか? (動的にロードする方法? 複数のロードを回避する方法? キャッシュする方法?)
requireJS を自分で設計して実装してみませんか? あなたならどうしますか?
ECMAScript6 についての理解について話してください。
ECMAScript6 でクラスを記述する方法は何ですか?
非同期ロードのメソッドは何ですか?
documen.write と innerHTML の違い?
DOM 操作 - ノードの追加、削除、移動、コピー、作成、検索の方法?
.call() と .apply() の意味と違い?
配列とオブジェクトのネイティブ メソッドは何ですか?
JSでクラスを実装する方法。このクラスをインスタンス化するにはどうすればよいですか
JavaScript でのスコープと変数宣言のプロモーション?
高パフォーマンスの Javascript を記述するには?
メモリリークを引き起こす操作は何ですか?
JQueryのソースコードを見たことがありますか?その実装原理について簡単に説明してもらえますか?
これは jQuery.fn の init メソッドから返されるオブジェクトを参照していますか?なぜこれを返すのですか?
jqueryで配列をjson文字列に変換し、再度変換するにはどうすればよいですか?
jQueryの属性コピー(拡張)の実装原理とディープコピーの実装方法は何ですか?
jquery.extend と jquery.fn.extend の違いは何ですか?
jQueryのキューはどのように実装されていますか?キューはどこで使用できますか?
Jqueryのbind()、live()、delegate()、on()の違いについて話してください。
JQuery は複数のイベントを同時に 1 つのオブジェクトにバインドできます。これはどのように実装されていますか?
カスタムイベントについてご存知ですか? jQuery の fire 関数は何を意味し、いつ使用するのですか?
jQuery と Sizzle セレクターはどの方法で結合されますか? (jQuery.fn.find() を Sizzle に)
jQuery のパフォーマンスを最適化する方法?
Jquery と jQuery UI の違いは何ですか?
JQueryのソースコードを見たことがありますか?その実装原理について簡単に説明してもらえますか?
jqueryで配列をjson文字列に変換し、再度変換するにはどうすればよいですか?
jQuery と Zepto の違いは何ですか?それぞれの使用シナリオは何ですか?
jQueryの最適化方法?
Zeptoの浸透の問題を解決するにはどうすればよいですか?
jQueryUI コンポーネントをカスタマイズするにはどうすればよいですか?
要件: ページ操作中にページ全体を更新せず、ブラウザーが前後に移動したときに正しく応答できる Web サイトを実装すること。技術的な実装計画を教えてください。
現在のスクリプトがブラウザ環境で実行されているか、ノード環境で実行されているかを確認するにはどうすればよいですか? (アリババ)
モバイル端末の最小タッチエリアはどれくらいですか?
jQuery の slideUp アニメーションで、ターゲット要素が外部イベントによって駆動される場合、マウスが外部要素イベントを迅速かつ連続的にトリガーすると、アニメーションが遅れて繰り返し実行されます。これに対処するにはどうすればよいですか?
に Script タグを置きます。ページの一番下 ボディクロージャ前とクロージャ後の違いは何ですか?ブラウザはそれらをどのように解析するのでしょうか?
モバイル端末のクリックイベントに遅延が発生します。どれくらいの時間がかかりますか?その理由は何ですか? この遅延を解決するにはどうすればよいでしょうか? (クリックには 300 ミリ秒の遅延があります。Safari のダブルクリック イベントの設計を実装するには、ブラウザがダブルクリックするかどうかを認識する必要があります。)
さまざまな JS フレームワーク (Angular、Backbone、Ember、React、 Meteor、Knockout...) それぞれの長所と短所を教えてください
Underscore はどの JS ネイティブ オブジェクトを拡張し、どのような便利な関数メソッドを提供しますか?
JavaScript でのスコープと変数宣言のホイスティングについて説明しますか?
メモリリークを引き起こす操作は何ですか?
JQuery は複数のイベントを同時に 1 つのオブジェクトにバインドできます。これはどのように実装されていますか?
Node.js に適用できるシナリオ?
(nodeの使い方を知っている方) ルート、ミドルウェア、クラスター、nodemon、pm2、サーバーサイドレンダリングをご存知ですか?
BackboneのMVC実装について説明してください。
「フロントエンド ルーティング」とは何ですか? 「フロントエンド ルーティング」を使用するのが適切な場合は何ですか?
Webkit とは何か知っていますか?さまざまなブラウザ ツールを使用してコードをデバッグします。何ですか?
フロントエンド コードをテストする方法は?BDD、TDD、単体テストをご存知ですか? ..)?
フロントエンド テンプレート (ヒゲ、アンダースコア、ハンドルバー) 何のために、そしてどのように使用するのか?
ハンドルバーの基本的な使用法を簡単に説明します。
Handlerbars の基本的なテンプレート処理プロセスを簡単に説明します。どのようにコンパイルされますか?どのようにキャッシュされるのでしょうか?
js を使用して千の区切り文字を実装しますか? (出典: フロントエンド移民労働者、ヒント: 通常 + 置換)
ブラウザのバージョンを検出する方法は何ですか?
2 つのクリック イベントを同時に dom にバインドします。1 つはキャプチャを使用し、もう 1 つはバブリングを使用します。イベントが何回実行されるか、そしてバブリングとキャプチャのどちらが先に実行されるかを教えてください。
会社の本来の仕事のプロセスはどのようなものですか、また他の人とどのように協力していますか?部門間の協力をどのように称賛しますか?
これまでに遭遇した最も難しい技術的問題は何ですか?どうやって解決しましたか?
デザインパターン シングルトン、ファクトリー、ストラテジ、デカレーターとは何か知っていますか?
よく使われるライブラリは何ですか?一般的に使用されるフロントエンド開発ツールは何ですか?どのようなアプリケーションやコンポーネントを開発しましたか?
ページを再構築するにはどうすればよいですか?
IE が他のブラウザと異なる機能を挙げてください。
Web サイトの 99% を再構築する必要があると記載されているのはどの本ですか?
グレースフル デグラデーションとプログレッシブ エンハンスメントとは何ですか?
公開鍵暗号化と秘密鍵暗号化について理解していますか。
WEB アプリケーションがサーバーからクライアントにデータをアクティブにプッシュする方法は何ですか?
Node の長所と短所についてご自身の意見はありますか?
どのようなフロントエンドのパフォーマンス最適化方法を使用しましたか?
httpステータスコードとは何ですか?どういう意味でしょうか?
URLを入力してページの読み込みが完了し、ページが表示されるまでのプロセスはどうなっているのでしょうか? (プロセスが詳細であればあるほど良いです)
一部の地域のユーザーから、Web サイトが非常に固まっているとの報告がありました。考えられる原因と解決策は何ですか?
アプリを開いてコンテンツを更新するまでのプロセス全体で何が起こっていますか? 遅いと感じた場合、問題を特定する方法とその解決方法を教えてください。
フロントエンド以外に他のテクノロジーを知っていますか?あなたの最大のスキルは何ですか?
どのようなエディタと開発環境が使いやすいと感じますか?
フロントエンドインターフェースエンジニアのポジションをどのように理解していますか?その展望は何でしょうか?
Web アプリ、ハイブリッド アプリ、ネイティブ アプリについてどう思いますか?
モバイル フロントエンド開発について理解していますか? (Web フロントエンド開発との主な違いは何ですか?)
残業についてはどう思いますか?
あなたは普段どのようにプロジェクトを管理していますか?
最近最も人気のあるものについていくつか話しましょう?よくアクセスするウェブサイトは何ですか?
突然の大規模な同時実行アーキテクチャを設計するにはどうすればよいですか?
最近最も人気のあるものについていくつか話しましょう?よくアクセスするウェブサイトは何ですか?
オープン ソース ツール bower、npm、yeoman、Grunt、gulp と、npm パッケージの package.json に必要なフィールドをご存知ですか? (名前、バージョン番号、依存関係)
各モジュールのコード構造は比較的単純である必要があり、各モジュール間の関係も非常に明確である必要があります。関数と反復の数が増加するにつれて、これをどのように維持しますか?州?
Git はブランチ、差分、マージを知っていますか?
突然の大規模な同時実行アーキテクチャを設計するにはどうすればよいですか?
チームの人手が不足していて、関数コードを書いた後に残業する必要がある場合、フロントエンドコードのテストを行いますか?
最近最も人気のあるものについていくつか話しましょう?あなたは普段どのようなウェブサイトにアクセスしますか?
SEOとは何か、そしてそれを最適化する方法を知っていますか?さまざまなメタデータの意味を知っていますか?
モバイル端末(Android iOS)でのユーザーエクスペリエンスを向上させるにはどうすればよいですか?
モバイルAPPプロジェクトの開発について簡単に説明しますあなたがやったプロセスは?
現在のチームであなたはどのような役割を果たしていますか?また、どのような明らかな役割を果たしていますか?
フルスタック開発者とは何だと思いますか?
あなたの最も自信のある作品を1つ紹介してください?
独自のテクノロジー ブログをお持ちですか? どのようなテクノロジーを使用していますか?
フロントエンドのセキュリティについてどう思いますか?
Web インジェクション攻撃について理解していますか? 2 つの最も一般的な攻撃 (XSS と CSRF) についてどの程度理解していますか?
プロジェクト中に遭遇した印象的な技術的問題は何ですか?具体的にはどのような問題があり、どのように解決されましたか? 。
最近何を習っていますか?
あなたの強みは何ですか?デメリットは何ですか?
フロントエンドチームを管理するにはどうすればよいですか?
最近何を学んでいますか?今後 3 年または 5 年後のご自身の計画について話していただけますか?