在JavaScript中,filter() 是一个数组方法,它创建一个新数组,其包含通过提供的函数实现的测试的所有元素。换句话说,filter() 函数遍历数组中的每个元素,并只将那些使测试函数返回 true 的元素包含在新数组中。
这里有一个简单的例子,假设我们有一个数字数组,并且我们想要一个只包含偶数的新数组:
javascript复制代码
| const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];  | |
| const evenNumbers = numbers.filter(function(number) {  | |
| return number % 2 === 0;  | |
| });  | |
| console.log(evenNumbers); // 输出: [2, 4, 6, 8, 10] | 
在上面的代码中,我们传递了一个匿名函数给 filter() 方法。这个函数接收数组中的每个元素作为参数,并检查该元素是否是偶数。如果是偶数,函数返回 true,filter() 方法就会将该元素包含在新数组中。
此外,你也可以使用箭头函数来简化代码:
javascript复制代码
| const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];  | |
| const evenNumbers = numbers.filter(number => number % 2 === 0);  | |
| console.log(evenNumbers); // 输出: [2, 4, 6, 8, 10] | 
在这个箭头函数版本中,我们直接返回了表达式 number % 2 === 0 的结果,如果结果为 true,则该元素会被包含在新数组中。