เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่ใช้อาร์เรย์ของค่าตามตัวอักษร ฟังก์ชันของเราควรคืนค่าการเกิดขึ้นสูงสุดของค่าอาร์เรย์ และหากมีการเกิดขึ้นที่เท่ากัน เราควรคืนค่าที่เลือกครั้งแรกของการเกิดขึ้นที่เท่ากัน
const arr = ['25', '50', 'a', 'a', 'b', 'c']
ในกรณีนี้ เราควรส่งคืน 'a'
const arr = ['75', '100', 'a', 'b', 'b', 'a']
ในกรณีนี้ ฉันควรจะได้ 'a'
. ด้วยตัวอย่าง
รหัสสำหรับสิ่งนี้จะเป็น −
const arr = ['25', '50', 'a', 'a', 'b', 'c']; const arr1 = ['75', '100', 'a', 'b', 'b', 'a']; const getMostFrequentValue = (arr = []) => { let count = 0, ind = -1; arr.forEach((el, i) => { this[el] = this[el] || { count: 0, ind: i }; this[el].count++; if (this[el].count > count) { count = this[el].count; ind = this[el].ind; return; }; if (this[el].count === count && this[el].ind < ind) { ind = this[el].ind; }; }, Object.create(null)); return arr[ind]; }; console.log(getMostFrequentValue(arr)); console.log(getMostFrequentValue(arr1));
ผลลัพธ์
และผลลัพธ์ในคอนโซลจะเป็น −
a a