JavaScript手写函数--实现compose函数

171 阅读1分钟

compose 意思是组合,就是将几个函数组合起来调用。


function add(num){
  return num + 2;
}
function mul(num){
  return num *8;
}

function sub(num){
  return num -3;
}

function compose(...args){
  return function(num){
    return args.reduceRight((res,cb)=>cb(res),num)
  }
}

console.log(compose(sub,mul,add)(1));// 21

compose是将addmulsub从右往左依次调用函数,对num加2乘8减3