Lodash _.filter() 方法
Lodash 是一个基于 underscore.js 的 JavaScript 库。 Lodash 有助于处理数组、集合、字符串、对象、数字等。
_.filter()方法迭代集合的元素,返回一个包含所有元素的数组,谓词返回 true。
注意:此方法与 _.remove() 方法不同,因为此方法返回一个新数组。
句法:
_.filter( collection, predicate )
参数:此方法接受上面提到的两个参数,如下所述:
- 集合:此参数保存要迭代的集合。
- 谓词:此参数保存每次迭代调用的函数。
返回值:此方法返回新过滤的数组。
示例 1:
// Requiring the lodash library
const _ = require("lodash");
// Original array
var users = [
{ 'user': 'luv',
'salary': 36000,
'active': true },
{ 'user': 'kush',
'salary': 40000,
'active': false }
];
// Using the _.filter() method
let filtered_array = _.filter(
users, function(o) {
return !o.active;
}
);
// Printing the output
console.log(filtered_array);
输出:
[ { user: 'kush', salary: 40000, active: false } ]
示例 2:
// Requiring the lodash library
const _ = require("lodash");
// Original array
var users = [
{ 'user': 'luv',
'salary': 36000,
'active': true },
{ 'user': 'kush',
'salary': 40000,
'active': false }
];
// Using the _.filter() method
// The `_.matches` iteratee shorthand
let filtered_array = _.filter(users,
{ 'salary': 36000, 'active': true }
);
// Printing the output
console.log(filtered_array);
输出:
[ { user: 'luv', salary: 36000, active: true } ]
示例 3:
// Requiring the lodash library
const _ = require("lodash");
// Original array
var users = [
{ 'user': 'luv',
'salary': 36000,
'active': true },
{ 'user': 'kush',
'salary': 40000,
'active': false }
];
// Using the _.filter() method
// The `_.matchesProperty` iteratee shorthand
let filtered_array =
_.filter(users, ['active', false]);
// Printing the output
console.log(filtered_array);
输出:
[ { user: 'kush', salary: 40000, active: false } ]
示例 4:
// Requiring the lodash library
const _ = require("lodash");
// Original array
var users = [
{ 'user': 'luv',
'salary': 36000,
'active': true },
{ 'user': 'kush',
'salary': 40000,
'active': false }
];
// Using the _.filter() method
// The `_.property` iteratee shorthand
let filtered_array =
_.filter(users, 'active');
// Printing the output
console.log(filtered_array);
输出:
[ { user: 'luv', salary: 36000, active: true } ]