JavaScript .filter() 方法💭
过滤法
今天,我们将讨论 JavaScript 中的 .filter() 方法。
过滤法
JavaScript 中的 `filter()` 方法会遍历数组中的每个元素,并对其应用一个条件语句。如果该条件语句返回 true,则该元素会被添加到输出数组中;否则,该元素不会被添加到输出数组中。
filter() 方法会根据给定的条件,从现有数组中创建一个新数组,其中包含符合该条件的元素。
句法
var first_array = arr.filter(
function callback(element, index, array) {
// Returns true or false
}[, thisArg])
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]
在下一个示例中,使用 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 } ]
在下一篇文章中,我们将讨论一些更酷的内容。
文章来源:https://dev.to/mursalfk/javascript-filter-method-1gl3