JavaScript Array flatMap Method (Live Playground)
The JavaScript Array flatMap method is used to map each element using a mapping function, then flattens the result into a new array. It's essentially the same as running a map method and then a flat method.
Here's a basic example of how to use the flatMap method:
let numbers = [1, 2, 3];
let result = numbers.flatMap(x => [x, x * 2]);
console.log(result);
// Expected output:
// [1, 2, 2, 4, 3, 6]
In this example, for each element in the numbers array, flatMap generates a new array [x, x * 2] (where x is the current element), then flattens these arrays into the result array.
Live Playground, Try it Yourself
Please note that flatMap only flattens one level deep:
let nestedNumbers = [1, 2, [3, 4]];
let result = nestedNumbers.flatMap(x => [x]);
console.log(result);
// Expected output:
// [1, 2, [3, 4]]
In the second example, nestedNumbers.flatMap(x => [x]) doesn't flatten the nested array [3, 4] because it only flattens one level deep.
Live Playground, Try it Yourself
The flatMap method can be really handy when you need to perform a map operation and also flatten the result in one go.