在 JavaScript 陣列中尋找等效值和頻率


我們需要編寫一個 JavaScript 函式,該函式僅以一個整數陣列作為引數。

該函式應檢查陣列中是否存在某個整數,其頻率與其值相同。

如果存在至少一個這樣的整數,我們應返回該整數,否則應返回 -1。

例如 −

如果輸入陣列為 −

const arr = [3, 4, 3, 8, 4, 9, 7, 4, 2, 4];

則輸出應為 −

const output = 4;

示例

以下是程式碼 −

const arr = [3, 4, 3, 8, 4, 9, 7, 4, 2, 4];
const checkValueFrequency = (arr = []) => {
   const map = {};
   for(let i = 0; i < arr.length; i++){
      const el = arr[i];
      map[el] = (map[el] || 0) + 1;
   };
   for(key in map){
      if(+key === map[key]){
         return +key;
      };
   };
   return -1;
};
console.log(checkValueFrequency(arr));

輸出

以下是控制檯輸出 −

4

更新於: 2021 年 1 月 22 日

58 次瀏覽

開啟你的職業生涯

完成課程可獲得認證

開始學習
廣告
© . All rights reserved.