検索
ホームページウェブフロントエンドhtmlチュートリアル2018 年のフロントエンド面接でよくあるアルゴリズムの質問

今回は、2018 年のフロントエンド面接でよくあるアルゴリズムの質問と、2018 年のフロントエンド面接の 注意事項 についてご紹介します。ここでは実際のケースを見てみましょう。

【関連する推奨事項: フロントエンドのインタビューの質問(2020)】

1オブジェクト配列に変換

var obj={  0:'我',  1:'的',  2:'妈',  3:'呀',  length:4}//obj格式必须是类似数组的格式(键值是索引,具有length属性)var _slice=[].slice;var objArr=_slice.call(obj);

2. 文字列内の最も頻繁に使用される文字を数える

function countMost(str) {  const objCount = {};
  str = str.split(&#39;&#39;).sort().join(&#39;&#39;);  for(let i=0; i<str.length; i++) {    let lastIndex = str.lastIndexOf(str[i]);
    num = lastIndex - i + 1;
    objCount[str[i]] = num;
    i = lastIndex;
  }  let maxStr = [],
      maxValue = 1;  for(let p in objCount) {    if(objCount[p] > maxValue) {
      maxStr = [];
      maxStr.push(p);
      maxValue = objCount[p];
    }else if(objCount[p] == maxValue){
      maxStr.push(p);
    }
  }  return maxStr.length == 1? maxStr[0] : maxStr;
}console.log(countMost(&#39;afjghdfffffraaaasdddddenas&#39;));

3. 以下を見つけます。正の配列 最大の差

const arr = [10,5,11,7,8,9];function getMaxProfit(arr) {  let max = arr[0],
      min = arr[0];  for(let i=1; i<arr.length; i++) {
    max = Math.max(max,arr[i]);
    min = Math.min(min,arr[i]);
  }  return max - min;
}console.log(getMaxProfit(arr));

4. 配列内の最大値または最小値を取得します

function maxAndMin(arr){  return {    max:Math.max.apply(null,arr.join(&#39;,&#39;).split(&#39;,&#39;)),    min:Math.min.apply(null,arr.join(&#39;,&#39;).split(&#39;,&#39;))
  }
}var arr = [22,0,[3,4,2,55]];
maxAndMin(arr).max;// 55maxAndMin(arr).min;// 0

5. 指定された長さのランダムな英数字文字列を生成します

function getRandomStr(len) {  var str = "";  for( ; str.length < len; str += Math.random().toString(36).substr(2));  return str.substr(0, len);
}

この記事のケースを読んだ後は、方法をマスターしたと思います。さらに興味深い内容については、php 中国語 Web サイトその他の関連記事を参照してください。

関連書籍:

jq を使用して複数の ajax を送信し、コールバックを実行するためのヒント

疑似要素の first-letter を使用してテキストの最初の文字を大文字にする方法

JavaScript 関数の詳細な説明過負荷

以上が2018 年のフロントエンド面接でよくあるアルゴリズムの質問の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

toreatealistinhtml、useforunorderedlistsandfororderedlists:1)forunorderedlists、wrapitemsinanduseforeachitem、renderingasabulletedlist.2)

HTMLアクション:Webサイト構造の例HTMLアクション:Webサイト構造の例May 05, 2025 am 12:03 AM

HTMLは、明確な構造のWebサイトを構築するために使用されます。 1)Webサイト構造などのタグを使用し、定義します。 2)例は、ブログとeコマースのウェブサイトの構造を示しています。 3)誤ったラベルネスティングなどの一般的な間違いを避けてください。 4)HTTP要求を削減し、セマンティックタグを使用してパフォーマンスを最適化します。

HTMLページに画像を挿入するにはどうすればよいですか?HTMLページに画像を挿入するにはどうすればよいですか?May 04, 2025 am 12:02 AM

to inertanimageintoanhtmlpage、usethetagwithsrcandaltattributes.1)usealttextforaccessibilityandseo.2)emplencesrcsetForresponsiveimages.3)applylazyloadingwithloading = "lazy" tooptimizeperformance.4)

HTMLの目的:Webブラウザがコンテンツを表示できるようにするHTMLの目的:Webブラウザがコンテンツを表示できるようにするMay 03, 2025 am 12:03 AM

HTMLの中心的な目的は、ブラウザがWebコンテンツを理解して表示できるようにすることです。 1。HTMLは、タグなどのタグを介してWebページの構造とコンテンツを定義します。 3.HTMLは、ユーザーの相互作用をサポートするフォーム要素を提供します。 4. HTMLコードの最適化は、HTTP要求の削減やHTMLの圧縮など、Webページのパフォーマンスを改善できます。

Web開発にとってHTMLタグが重要なのはなぜですか?Web開発にとってHTMLタグが重要なのはなぜですか?May 02, 2025 am 12:03 AM

htmltagsareSterenceforwebdevelovementasyStheStructureanhandhancewebpages.1)theydefineLayout、semantics、and-interactivity.2)semanticagsimprovecessibility.3)opeusofusofagscanoptimizeperformanceandensurecross-brows-compativeation。

HTMLタグと属性に一貫したコーディングスタイルを使用することの重要性を説明します。HTMLタグと属性に一貫したコーディングスタイルを使用することの重要性を説明します。May 01, 2025 am 12:01 AM

コードの読みやすさ、保守性、効率を向上させるため、一貫したHTMLエンコーディングスタイルは重要です。 1)低ケースタグと属性を使用します。2)一貫したインデントを保持し、3)シングルまたはダブルの引用符を選択して固執する、4)プロジェクトのさまざまなスタイルの混合を避け、5)きれいなスタイルやEslintなどの自動化ツールを使用して、スタイルの一貫性を確保します。

ブートストラップ4にマルチプロジェクトカルーセルを実装する方法は?ブートストラップ4にマルチプロジェクトカルーセルを実装する方法は?Apr 30, 2025 pm 03:24 PM

Bootstrap4にマルチプロジェクトカルーセルを実装するソリューションBootstrap4にマルチプロジェクトカルーセルを実装するのは簡単な作業ではありません。ブートストラップですが...

DeepSeekの公式Webサイトは、マウススクロールイベントの浸透の影響をどのように達成していますか?DeepSeekの公式Webサイトは、マウススクロールイベントの浸透の影響をどのように達成していますか?Apr 30, 2025 pm 03:21 PM

マウススクロールイベントの浸透の効果を実現する方法は? Webを閲覧すると、いくつかの特別なインタラクションデザインに遭遇することがよくあります。たとえば、DeepSeekの公式ウェブサイトでは、...

See all articles

ホット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

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

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境