Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

ループして、配列JavaScriptのすべての要素の頻度を取得します


たとえば、いくつかの重複するエントリを含む数値/文字列の配列が与えられます。必要なのは、配列内の各要素の頻度を返すことだけです。要素をキーとして、その値を頻度としてオブジェクトを返すことは、この状況に最適です。

forEach()ループを使用して配列を反復処理し、オブジェクト内の要素の数を増やし続けます。存在しない場合は、オブジェクト内のその要素の新しいプロパティを作成します。

そして最後に、オブジェクトを返します。

この問題の完全なコードは-

になります

const arr = [2,5,7,8,5,3,5,7,8,5,3,4,2,4,2,1,6,8,6];
const getFrequency = (array) => {
   const map = {};
   array.forEach(item => {
      if(map[item]){
         map[item]++;
      }else{
         map[item] = 1;
      }
   });
   return map;
};
console.log(getFrequency(arr));

出力

コンソールの出力は-

になります
{ '1': 1, '2': 3, '3': 2, '4': 2, '5': 4, '6': 2, '7': 2, '8': 3 }

  1. Javascriptで配列をループする

    Javascriptで配列をループする方法はたくさんあります。 JavascriptのForループ ループのためにそれらから始めましょう。 jsのforループには2つのバリエーションがあります。最初の形式は、init、condition、exprループです。これにより、最初のステートメントが初期化され、各反復でexprが実行され、条件がチェックされます。 たとえば、 var step; for (step = 0; step < 5; step++) {    console.log('Taking step ' + step); } これに

  2. JavaScriptを使用して同じ配列内の配列の要素を複製するにはどうすればよいですか?

    以下は、同じ配列内の配列の要素を複製するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" > <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>   &nbs