发布于 2026-01-06 12 阅读
0

JavaScript .filter() 方法 💭 过滤方法

JavaScript .filter() 方法💭

过滤法

今天,我们将讨论 JavaScript 中的 .filter() 方法。

过滤法

JavaScript 中的 `filter()` 方法会遍历数组中的每个元素,并对其应用一个条件语句。如果该条件语句返回 true,则该元素会被添加到输出数组中;否则,该元素不会被添加到输出数组中。

filter() 方法会根据给定的条件,从现有数组中创建一个新数组,其中包含符合该条件的元素。

句法

var first_array = arr.filter(
    function callback(element, index, array) {
        // Returns true or false
}[, thisArg])
Enter fullscreen mode Exit fullscreen mode

filter 函数的语法与 map 函数类似,区别在于回调函数必须返回 true 才能保留元素,否则返回 false。回调函数中只需要传入元素即可。

例子

在下面的示例中,奇数被“过滤”掉,只留下偶数。

const all_numbers = [1, 2, 3, 4];
const even_numbers = all_numbers.filter(number => number % 2 === 0);
console.log(even_numbers);
// [2, 4]
Enter fullscreen mode Exit fullscreen mode

在下一个示例中,使用 filter() 获取所有成绩大于或等于 90 的学生。

const students = [
    { name: 'Mursal', grade: 96 },
    { name: 'Furqan', grade: 48 },
    { name: 'Ahmed', grade: 99 },
    { name: 'Anees', grade: 56 },
    { name: 'Burhan', grade: 90 }
];

const studentGrades = students.filter(
    students => students.grade >= 90);
return studentGrades;

//[ { name: 'Mursal', grade: 96 },
//    { name: 'Ahmed', grade: 99 },
//    { name: 'Burhan', grade: 90 } ]
Enter fullscreen mode Exit fullscreen mode

在下一篇文章中,我们将讨论一些更酷的内容。

文章来源:https://dev.to/mursalfk/javascript-filter-method-1gl3