https://habr.com/ru/post/480278/
В общей сложности мы рассмотрим десять вспомогательных функций. Они невероятно удобны в ваших проектах, и лучше всего, они реализуются с помощью
reduce! Я черпал много вдохновения из
библиотеки RamdaJS для этого, так что проверьте это!
1. some
Параметры
1.
predicate — функция, которая возвращает
true или
false.
2.
array — список элементов для тестирования.
Описание
Если
predicate возвращает
true для любого элемента,
some возвращает
true. В противном случае возвращает
false.
Реализация
Использование
2. all
Параметры
1.
predicate — функция, которая возвращает
true или
false.
2.
array — список элементов для тестирования.
Описание
Если
predicate возвращает
true для каждого элемента,
all возвращает
true. В противном случае возвращает
false.
Реализация
Использование
3. none
Параметры
1.
predicate — функция, которая возвращает
true или
false.
2.
array — список элементов для тестирования.
Описание
Если
predicate возвращает
false для каждого элемента,
none возвращает
true. В противном случае возвращает
false.
Реализация
Использование
4. map
Параметры
1.
transformFunction — функция для запуска на каждом элементе.
2.
array — список элементов для преобразования.
Описание
Возвращает новый массив элементов, каждый из которых преобразуется в соответствии с заданной функцией
transformFunction.
Реализация
Использование
5. filter
Параметры
1.
predicate — функция, которая возвращает
true или
false.
2.
array — список элементов для фильтрации.
Описание
Возвращает новый массив. Если
predicate возвращает
true, этот элемент добавляется в новый массив. В противном случае этот элемент исключается из нового массива.
Реализация
Использование
6. reject
Параметры
1.
predicate — функция, которая возвращает
true или
false.
2.
array — список элементов для фильтрации.
Описание
Так же, как
filter, но с противоположным поведением.
Если
predicate возвращает
false, этот элемент добавляется в новый массив. В противном случае этот элемент исключается из нового массива.
Реализация
Использование
7. find
Параметры
1.
predicate — функция, которая возвращает
true или
false.
2.
array — список элементов для поиска.
Описание
Возвращает первый элемент, соответствующий данному
predicate. Если ни один элемент не совпадает, то возвращается
undefined.
Реализация
Использование
8. partition
Параметры
1.
predicate — функция, которая возвращает
true или
false.
2.
array — список элементов.
Описание
Разбивает массив на две части на основе
predicate. Если
predicate возвращает
true, элемент переходит в список 1. В противном случае элемент попадает в список 2.
Реализация
Использование
9. pluck
Параметры
1.
key — имя ключа для извлечения из объекта.
2.
array — список элементов.
Описание
Извлекает данный
key из каждого элемента массива. Возвращает новый массив этих значений.
Реализация
Использование
10. scan
Параметры
1.
reducer — стандартная функция
reducer, которая принимает два параметра —
acc и
currentr элемент из массива.
2.
initialValue — начальное значение для
acc.
3.
array — список элементов.
Описание
Работает так же, как
reduce, но вместо одного результата, он возвращает список каждого уменьшенного значения на пути к одному результату.
Реализация
Использование