2016-06-22 2 views
1

_.find(collection, [predicate=_.identity], [fromIndex=0]) использует predicate=_.identity для соответствия объектам в коллекции, например.Как реализовать lodash-подобное мелкое сравнение объектов?

> _.find([{a: 'A', n: 0}, {a: 'A', n: 0}], {a: 'A'}) 
< Object {a: "A", n: 0} 

Какова фактическая функция, используемая для сравнения?

например. Я хочу проверить, соответствует ли конкретный объект (например, {a: 'A', n: 0}) моему предикату {a: 'A'}.

Простым обходным путем является создание вспомогательного массива и его использование для записи условия, например. !!_.find([{a: 'A', n: 0}], {a: 'A'}). Несмотря на то, что есть функция для проведения эквивалентного сравнения.

ответ

0

Как вы ищете способ

проверки, если конкретный объект (например, {а: 'А', п: 0}) соответствует моему предиката {а: 'A'}

Возможно, вы можете использовать lodash's _.isMatchmethod.

> _.isMatch({a: 'A', n: 0}, {a: 'A'}) 
true 
+1

Я знал, что я что-то пропускаю. спасибо – Gajus

Смежные вопросы