map filter
时间: 2023-09-05 12:09:40 浏览: 94
在 JavaScript 中,`filter` 和 `map` 是两个常用的数组方法,它们都可以用于对数组进行操作和转换,但有一些区别。
1. `filter` 方法用于筛选数组中的元素,返回一个新的数组,该数组只包含满足特定条件的元素。它接受一个回调函数作为参数,该回调函数应返回一个布尔值来确定是否保留该元素。如果回调函数返回 `true`,则该元素将被保留在新数组中,否则将被过滤掉。
示例:
```javascript
const numbers = [1, 2, 3, 4, 5];
const evenNumbers = numbers.filter(num => num % 2 === 0);
console.log(evenNumbers); // 输出 [2, 4]
```
2. `map` 方法用于对数组中的每个元素进行转换,并返回一个新的数组,其中包含转换后的值。它也接受一个回调函数作为参数,该回调函数应对每个元素执行某种操作,并返回转换后的值。
示例:
```javascript
const numbers = [1, 2, 3, 4, 5];
const doubledNumbers = numbers.map(num => num * 2);
console.log(doubledNumbers); // 输出 [2, 4, 6, 8, 10]
```
需要注意的是,`filter` 方法返回的数组长度可能小于或等于原始数组长度,而 `map` 方法始终返回一个与原始数组长度相等的新数组。
总结:
- `filter` 用于筛选数组元素,返回满足条件的元素组成的新数组。
- `map` 用于对数组元素进行转换,返回转换后的值组成的新数组。
阅读全文