There are several ways to obtain unique items from the result of mapping and filtering an array in JavaScript:
Example:
const arr = [3, 2, 2, 1, 4, 3];
const uniqueArr = [...new Set(arr.map(item => item * 2).filter(item => item > 4))];
console.log(uniqueArr); // Output: [6, 8]
Example:
const arr = [3, 2, 2, 1, 4, 3];
const uniqueArr = arr.map(item => item * 2).filter((item, index, self) => self.indexOf(item) === index && item > 4);
console.log(uniqueArr); // Output: [6, 8]
Example:
const arr = [3, 2, 2, 1, 4, 3];
const uniqueArr = arr.map(item => item * 2).filter(item => item > 4).reduce((acc, item) => {
if (!acc.includes(item)) {
acc.push(item);
}
return acc;
}, []);
console.log(uniqueArr); // Output: [6, 8]
All three methods will return an array containing only unique values after mapping and filtering the original array.
Please start posting anonymously - your entry will be published after you log in or create a new account. This space is reserved only for answers. If you would like to engage in a discussion, please instead post a comment under the question or an answer that you would like to discuss
Asked: 2021-10-09 11:00:00 +0000
Seen: 8 times
Last updated: Aug 15 '21
Is it feasible to utilize a Toggle Button to switch among multiple classes exceeding 2?
What is the process for generating a dynamic subdomain/URL using vue.js?
How can I create a transition on click using CSS without the need for JavaScript?
How can the style of the loader be modified while the form submission is being processed?
I'm attempting to develop a Javascript-based comments section for my website.
What are some feasible methods to enable MIDI file playback on a web browser?