Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

ค้นหาค่าและความถี่ที่เท่ากันในอาร์เรย์ใน 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