Array FlatMap

FlatMap is a single method which can be usable for flat and map methods.
As you know flat(), flattening the 1-level deep and map() to loop into an array.
If we include both, we called flatMap() 😉
So, instead if calling two methods flat() and map(), you can use single method called flatMap().
let plants = ['💐', '🌲', '🌻', '🌹'];

// ❌ map + flat
plants.map(plant => [plant, '🍁']).flat();
// Output
//["💐", "🍁", "🌲", "🍁", "🌻", "🍁", "🌹", "🍁"]

// ✅ flatMap
plants.flatMap(plant => [plant, "🍁"])

// Output
// ["💐", "🍁", "🌲", "🍁", "🌻", "🍁", "🌹", "🍁"]
How flatMap() works?
📝 FlatMap() always do first map() and then it flat().
In flat(), we use to pass arguments where you set the depth, arguments define how deep a nested array should be flattened.
let plants = [[["🌻", "🌹"]]];
plants.flat(2);

// ["🌻", "🌹"]
flatMap() do only 1 level deep flattening.
let plants = [[["🌻", "🌹"]]];
plants.flatMap(plant => [plant]);

// [["🌻", "🌹"]]
Filter using flatMap 😉
Yes, You can also do filter here using flatMap().
let arr = [5, 4, -3, 20, -4, 18]
arr.flatMap(i => {
  return i < 0 ? [] : [i];
})

// [5, 4, 20, 18]
Reference 🧐
Summary ∑
flatMap() method always helps if you want to use map and flat methods both together.
Thanks for reading the article ❤️
🌟 Twitter 👩🏻‍💻 suprabha.me 🌟 Instagram

34

This website collects cookies to deliver better user experience

Array FlatMap