Home >Web Front-end >JS Tutorial >How Can I Efficiently Count Element Occurrences in a JavaScript Array?

How Can I Efficiently Count Element Occurrences in a JavaScript Array?

Barbara Streisand
Barbara StreisandOriginal
2024-12-30 06:58:09740browse

How Can I Efficiently Count Element Occurrences in a JavaScript Array?

Counting Element Occurrences in Array

Determining the frequency of elements within an array is a common task in programming. In JavaScript, a solution to this problem is to utilize an object as a tally.

The object, named 'counts', is created to store the element frequencies. Its keys represent the unique elements, while the corresponding values represent their respective occurrences.

To populate the 'counts' object, the array is iterated over. For each encountered element, its count is either incremented if it exists or initialized to 1 if it's a new encounter.

As a result, the 'counts' object provides a comprehensive tally of the element frequencies. Additionally, individual element counts can be retrieved by accessing the corresponding property in the object, as demonstrated in the example code snippet:

const arr = [5, 5, 5, 2, 2, 2, 2, 2, 9, 4];
const counts = {};

for (const num of arr) {
  counts[num] = counts[num] ? counts[num] + 1 : 1;
}

console.log(counts);
console.log(counts[5], counts[2], counts[9], counts[4]);

This code snippet generates the following output:

{ '5': 3, '2': 5, '9': 1, '4': 1 }
3 5 1 1

The 'counts' object contains the element frequencies, and the console.log statements display the individual counts for specific elements.

The above is the detailed content of How Can I Efficiently Count Element Occurrences in a JavaScript Array?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn