reduce-fns:凡是能变成2个参数的reducer,即可以变成无数个

利用 reduce 的原理,写一个通用的 reducer变换
更新于: 2021-12-19 12:57:29

安装

npm i @jswork/reduce-fns

使用

通用我们做有一个sum方法来完成2个数的加法

import reduceFns from '@jswork/reduce-fns';

const sum = (a, b) => a + b;
const mul = (a, b) => a * b;
const sumAll = reduceFns(
  () => 0,
  (args) => args[0],
  sum
);
const mulAll = reduceFns(
  () => 1,
  (args) => args[0],
  mul
);

console.log(sumAll(1, 2, 3))          // 6
console.log(mulAll(1, 2, 3, 4, 5))    // 120