📜  Lodash _.matchesProperty() 方法(1)

📅  最后修改于: 2023-12-03 15:32:44.691000             🧑  作者: Mango

Lodash _.matchesProperty() 方法

_.matchesProperty() 方法是 Lodash 库中的一种函数方法,用于创建一个对对象进行属性匹配的函数。该函数可以接收两个参数:属性名和对应的值,返回一个新的函数,该函数用于检查对象的属性值是否与给定的属性值匹配。

语法
_.matchesProperty(
  path,
  srcValue
)
参数

path: (Array|string) 要匹配的对象属性路径。

srcValue: 要匹配的值。

返回值

(Function): 返回一个接收 1 个参数的新函数。

使用案例
import { matchesProperty } from 'lodash';

const arrUsers = [
  { name: 'John', age: 25, job: 'developer' },
  { name: 'Alice', age: 28, job: 'designer' },
  { name: 'Bob', age: 30, job: 'developer' },
];

const isDeveloper = matchesProperty('job', 'developer');

console.log(arrUsers.filter(isDeveloper));  // [{ name: 'John', age: 25, job: 'developer' }, { name: 'Bob', age: 30, job: 'developer' }]

在这个例子中,我们声明了一组用户对象,每个对象都有三个属性:name, age, job。我们希望找到其中所有职业为 developer 的用户。

为了实现这个功能,我们使用 matchesProperty() 方法创建了一个新的函数 isDeveloper,该函数接收一个对象参数,检查该对象是否满足 job 属性为 developer

我们将这个函数作为 filter() 方法的参数,对数组 arrUsers 进行筛选,最终输出符合条件的数组对象 { name: 'John', age: 25, job: 'developer' }{ name: 'Bob', age: 30, job: 'developer' }

总结

通过 Lodash 的 matchesProperty() 方法,我们可以方便地创建一个属性匹配的函数,用于筛选出对象中符合条件的属性值。该方法非常适合用于数组对象的筛选和过滤场景中。