配列JavaScriptで最も頻繁に表示されるアイテムを取得します
たとえば、文字列/数値リテラルの配列を受け取り、最も多く出現するアイテムのインデックスを返す関数を作成する必要があるとします。配列を反復処理して周波数マップを作成し、そのマップから最も出現度の高いインデックスを返します。
そのためのコードは-
になります例
const arr1 = [12, 5, 6, 76, 23, 12, 34, 5, 23, 34, 65, 34, 22, 67, 34]; const arr2 = [12, 5, 6, 76, 23, 12, 34, 5, 23, 34]; const mostAppearances = (arr) => { const frequencyMap = {}; arr.forEach(el => { if(frequencyMap[el]){ frequencyMap[el]++; }else{ frequencyMap[el] = 1; }; }); let highest, frequency = 0; Object.keys(frequencyMap).forEach(key => { if(frequencyMap[key] > frequency){ highest = parseInt(key, 10); frequency = frequencyMap[key]; }; }); return arr.indexOf(highest); }; console.log(mostAppearances(arr1)); console.log(mostAppearances(arr2));
出力
コンソールの出力は-
になります6 1
-
JavaScriptの配列から最も近い数を取得します
最初の引数として数値の配列を取り、2番目の引数として単一の数値を受け取るJavaScript関数を作成する必要があります。 関数は、2番目の引数で指定された数値に最も近い配列からその数値を見つけて返す必要があります。 例- const arr = [34, 67, 31, 53, 89, 12, 4]; const num = 41; その場合、出力は34になります。 例 以下はコードです- const arr = [34, 67, 31, 53, 89, 12, 4]; const num = 41; const findClosest = (arr = [], num) =>
-
JavaScriptを使用して配列内で最も頻繁に使用される単語を検索する
問題 最初の引数として英語の小文字のアルファベットの文字列の配列arrを受け取るJavaScript関数を作成する必要があります。関数の2番目の引数は、数値num(num