📅  最后修改于: 2023-12-03 14:48:10.148000             🧑  作者: Mango
Underscore.js 是一个 JavaScript 工具库,提供了许多函数和工具来操作和处理 JavaScript 数组、对象和函数等各种数据类型。其中一个常用的函数是 _.filter,本文将对其进行介绍。
_.filter 函数用于过滤一个数组中的元素,返回一个新的数组,新数组中只包含符合条件的元素。该函数接受两个参数,第一个参数为要过滤的数组,第二个参数为过滤条件的回调函数。回调函数接受一个参数,即数组中的每个元素,如果该元素符合条件,则回调函数应该返回 true,否则返回 false。
_.filter(list, predicate, [context])
list
:要过滤的数组或对象。predicate
:过滤条件的回调函数,接受一个参数,即数组或对象中的每个元素。context
:可选,回调函数中的 this
值。以下为一个使用 _.filter 函数的示例:
const arr = [
{ name: 'Tom', age: 25 },
{ name: 'Jerry', age: 20 },
{ name: 'Mickey', age: 30 },
{ name: 'Donald', age: 35 }
];
const result = _.filter(arr, item => item.age >= 30);
console.log(result);
// Output: [{ name: 'Mickey', age: 30 }, { name: 'Donald', age: 35 }]
在以上示例中,_.filter
函数将过滤 arr
数组中 age
属性大于等于 30 的元素,返回一个新的数组 result
,其中包含了两个符合条件的元素。
this
,需要将 context
参数传入。_.filter 函数是一个十分实用的 Underscore.js 工具函数,可以对数组和对象进行过滤操作,提取出符合条件的元素,使用灵活方便。