js中filter函数的用法

admin 阅读:101 2024-05-02
javascript filter 函数用于过滤数组中符合特定条件的元素,返回一个由满足条件的元素组成的新数组。用法包括:过滤满足简单或复杂条件的元素,以及创建过滤器链。filter 函数不会修改原始数组,回调函数必须返回布尔值,如果未返回布尔值,将会抛出错误。

js中filter函数的用法

JavaScript 中 filter 函数的用法

filter 函数是 JavaScript 数组内置方法,用于过滤数组中满足特定条件的元素,返回一个由符合条件的元素组成的新数组。

语法:

<code class="javascript">filter(callback(element, index, array))</code>

参数:

  • callback(element, index, array):一个必须返回布尔值的回调函数。

    • element:当前正在处理的数组元素。
    • index:当前元素在数组中的索引。
    • array:正在处理的数组本身。

返回值:

一个包含满足回调函数条件的所有元素的新数组。

用法:

1. 过滤满足简单条件的元素:

<code class="javascript">const numbers = [1, 2, 3, 4, 5, 6];
const evenNumbers = numbers.filter((num) => num % 2 === 0);</code>

2. 过滤满足复杂条件的元素:

<code class="javascript">const users = [
  { name: 'John', age: 25 },
  { name: 'Mary', age: 30 },
  { name: 'Bob', age: 18 }
];
const adults = users.filter((user) => user.age >= 18);</code>

3. 过滤器链:

<code class="javascript">const evenAndGreaterThan3 = numbers.filter((num) => num % 2 === 0).filter((num) => num > 3);</code>

示例:

以下示例演示了如何使用 filter 函数过滤一个包含学生分数的数组,获取不及格的学生名单:

<code class="javascript">const scores = [90, 85, 77, 65, 52, 45];
const failingScores = scores.filter((score) => score </code>

failingScores 变量将包含以下元素:

  • 52
  • 45

注意:

  • filter 函数本身不会修改原始数组。
  • 回调函数必须返回布尔值。如果未返回布尔值,将抛出错误。
声明

1、部分文章来源于网络,仅作为参考。
2、如果网站中图片和文字侵犯了您的版权,请联系1943759704@qq.com处理!