Я немного перегружен всеми функциями, доступными мне в Lodash, поэтому я надеюсь, что кто-то может указать мне на тот, который я уверен, существует, что будет делать следующее для меня. Я хочу, чтобы иметь возможность передать массив и условие поиска и пропустить его через все согласованные элементы, что позволяет мне запускать функцию для каждого. То, что у меня есть на данный момент, является чем-то вроде этого:Найти подходящие элементы в массиве и сделать что-то для каждого матча
_.each(myArray, (item) => {
if (item.field=="whatever") {
console.log("Matched by "+item.name);
}
});
Это нормально работает. Просто я уверен, что у Lodash есть способ переместить item.field=="whatever"
в аргументы функции как-то, и я предпочел бы пойти с более идиоматическим способом Lodash, если смогу.
Рад узнать, что я ничего не пропустил! Я не знаком с синтаксисом, который у вас есть: '_ (matchedItems) .each (item => {'. Я бы написал его как '_.each (matchedItems, item => {'. В чем разница? –
@JohnMoore. Оба они делают то же самое, это просто альтернативный способ написания. ['_()' - обертка объекта lodash] (https://lodash.com/docs#lodash), которая преобразует коллекцию в объект lodash, который позволит вам связать другие методы lodash. Например, метод '_.filter()' возвращает простой массив и, обернув его '_ (_. filter())', вы можете затем связать другие методы lodash, такие как '_ (_. filter()). each()'. –