📜  js 中的 map 函数 (1)

📅  最后修改于: 2023-12-03 15:16:59.679000             🧑  作者: Mango

JS 中的 map 函数

在 JavaScript 中,map() 是一种迭代器方法,它允许您在数组中的每个元素上运行函数,并返回数组中每个元素所返回值的新数组。map() 可以用于替代 for 循环,因为它更简洁。

语法
array.map(function(currentValue, index, arr), thisValue)
参数
  • function (必需):必须是一个函数。数组中的每个元素都会调用此函数。
  • currentValue (必需):当前元素的值。
  • index (可选):当前元素的索引。
  • arr (可选):当前元素属于的数组。
  • thisValue (可选):对象作为该执行回调时使用,传递给函数,用作 "this" 的值。
返回值

返回一个新数组,包含对每个元素执行回调的结果。

示例
const numbers = [1, 2, 3, 4, 5];
const doubled = numbers.map((num) => {
  return num * 2;
});

console.log(doubled); // [2, 4, 6, 8, 10]
注意事项
  • map() 不会修改原始数组。
  • 如果您需要在迭代中使用异步代码,请不要使用 map()。推荐使用 for 循环或 forEach()。
  • 如果回调只给出了一个参数,则该参数将是数组中的每个元素,而索引和数组本身将不会传递给回调。因此,通常称第一个参数为 element 或 item 而不是 currentValue。
结论

map() 是一个非常强大的函数,可以帮助您更快捷地操作数组。 虽然不应在所有情况下使用它,但是当您需要转换数组中所有元素时,它是最好的选择之一。