高阶数组 .map

99 阅读2分钟

JavaScript的.map()方法是一个用于数组的高阶函数,它可以将一个数组中的每个元素映射(即转换)成另一个值,并返回一个新的数组。

以下是一个简单的例子,演示了如何使用.map()将一个数字数组中的每个元素加倍:

javascript复制代码
const numbers = [1, 2, 3, 4, 5];
const doubledNumbers = numbers.map((num) => num * 2);
console.log(doubledNumbers); // Output: [2, 4, 6, 8, 10]

在这个例子中,我们定义了一个numbers数组和一个doubledNumbers变量,它将存储一个新的数组,该数组包含每个数字加倍后的结果。我们对numbers数组调用了.map()方法,该方法接受一个函数作为参数,该函数将被应用于数组中的每个元素。这个函数必须返回一个新的值,它将替换原始数组中的相应元素。在本例中,我们使用箭头函数定义了这个函数,它将每个数字乘以2并返回结果。

除了简单的数学函数之外,.map()还可以用于更复杂的操作,例如将一个对象数组中的每个对象转换成字符串。以下是一个使用.map()来提取对象数组中每个对象的名称属性的例子:

javascript复制代码
const people = [
  { name: 'John', age: 30 },
  { name: 'Jane', age: 25 },
  { name: 'Bob', age: 40 }
];
const names = people.map((person) => person.name);
console.log(names); // Output: ['John', 'Jane', 'Bob']

在这个例子中,我们定义了一个people数组和一个names变量,它将存储一个新的数组,该数组包含每个对象的名称属性。我们调用了.map()方法来遍历people数组,并使用箭头函数来提取每个对象的name属性。我们返回的是所有名称组成的新数组。