Escreva sua própria versão da função _.matchesProperty do lodash usando JavaScript puro. matchesProperty retorna uma função que compara o objeto e o caminho fornecidos, que é um par chave-valor, e então determina se o objeto inclui o par.
Por exemplo, ao usar o método find comum do JavaScript, você o escreveria assim:
arrayOfCars.find(car => car.year === 2020)Como a função matchesProperty retorna uma função, ela pode ser usada para substituir a função de callback escrita no método find. Usando matchesProperty, poderia ficar assim:
arrayOfCars.find(matchesProperty("year", 2020))Esta é uma função auxiliar frequentemente usada por outras funções mais avançadas do lodash que querem verificar uma correspondência. À medida que escrevermos mais funções do lodash, precisaremos desta função auxiliar.
Isto é muito semelhante à função matches. A única diferença é a forma como os argumentos são passados: matches exige um objeto, enquanto matchesProperty exige duas strings que representam um par chave-valor.
const objects = [
{ "a": 1, "b": 2, "c": 3 },
{ "a": 4, "b": 5, "c": 6 }
]
_.find(objects, _.matchesProperty("a", 4))
➞ [{ "a": 4, "b": 5, "c": 6 }]