In this article, we are going to learn how to find the most frequently occurring element in an array we can use objects to count the occurrences of each element in an array.
Methods to find the most frequently occurring element in an array in JavaScript:
Table of Content
Method 1: Using the reduce() method
To find the highest count of elements we can use the “reduce” method.
Example: This example shows the use of the above-explained approach.
Javascript
function mostFrequentUsingReduce(arr) { const counts = arr.reduce((acc, num) => { acc[num] = (acc[num] || 0) + 1; return acc; }, {}); return Object.keys(counts).reduce((a, b) => (counts[a] > counts[b] ? a : b)); } const array = [ 'Cat' , 'Dog' , 'Cat' , 'Goat' , 'Cow' , 'Cat' , ]; console.log(mostFrequentUsingReduce(array)); |
Cat
Method 2: Using the JavaScript Map()
By using the “Map” Data Structure we can store the occurrence of elements in an array.
Example:This example shows the use of the above-explained approach.
Javascript
function mostFrequentUsingMap(arr) { const counts = new Map(); for (let num of arr) { counts.set(num, (counts.get(num) || 0) + 1); } let mostFrequent; let maxCount = 0; counts.forEach((count, num) => { if (count > maxCount) { maxCount = count; mostFrequent = num; } }); return mostFrequent; } const array = [1, 2, 2, 3, 2, 3, 4]; console.log(mostFrequentUsingMap(array)); |
2
Method 3: Using the Math.max method
By using “Math.max” also we can find the highest frequency of given array elements.
Example: This example shows the use of the above-explained approach.
Javascript
function mostFrequentUsingMathMax(arr) { const counts = {}; for (let num of arr) { counts[num] = (counts[num] || 0) + 1; } const maxCount = Math.max(...Object.values(counts)); const mostFrequent = Object.keys(counts).find(key => counts[key] === maxCount); return mostFrequent; } const array = [1, 5, 2, 3, 5, 6, 4]; console.log(mostFrequentUsingMathMax(array)); |
5