Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const filterAndGroup = (collection, min, max) => {
- return collection
- .filter(item => item.age >= min && item.age <= max)
- .reduce(
- (acc, { age, name, gender }) => ({
- ...acc,
- [gender]: [...acc[gender], { age, name }]
- }),
- { male: [], female: [] }
- );
- };
- // Sample data and usage example
- const data = [
- {age: 31, name: 'Jennifer', gender: 'female'},
- {age: 42, name: 'Max', gender: 'male'},
- {age: 15, name: 'Amy', gender: 'female'},
- {age: 18, name: 'Lucy', gender: 'female'},
- {age: 37, name: 'Carl', gender: 'male'},
- {age: 32, name: 'Susanne', gender: 'female'},
- ];
- filterAndGroup(data);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement