Have you ever found yourself staring at a long list of data in an array, wishing there was a way to transform it easily? Well, fret no more! JavaScript's [s]`[/s]map()` method is here to save the day.
Think of [s]`[/s]map()` as a magical conveyor belt for your arrays. You feed it an array and a function, and it spits out a brand new array with each element transformed according to your function's instructions.
Here's how it works:
[*][s]* [/s]
[s]**[/s]The Array:** This is the starting point, the data you want to manipulate.
[*][s]* [/s]
[s]**[/s]The Function (The Magic):** This function defines what happens to each element in the array. It takes an element (often called [s]`[/s]currentValue`), its index (optional, but handy!), and the entire array (also optional) as arguments, and returns the desired transformed value.
Now, let's put it into action!
[s]```[/s]
const numbers = [1, 2, 3, 4, 5];
// Double each number
const doubledNumbers = numbers.map(number => number * 2);
console.log(doubledNumbers); // Output: [2, 4, 6, 8, 10]
// Extract just the names from an array of objects
const users = [
{ name: "Alice", age: 30 },
{ name: "Bob", age: 25 },
];
const names = users.map(user => user.name);
console.log(names); // Output: ["Alice", "Bob"]
```
[s]**[/s]Bonus Tip:** [s]`[/s]map()` doesn't modify the original array. It creates a brand new one with the transformed elements.