0
点赞
收藏
分享

微信扫一扫

柯里化函数

cwq聖泉寒江2020 2022-04-05 阅读 60
javascript
<script>
  //参数的加
  const sumFn = (...args) => {
    return args.reduce((a, b) => {
      return a + b
    })
  }

  //柯里化函数
  const currying = (fnc) => {
    const num = []
    return function result(...rest) {
      if (rest.length != 0) {
        num.push(...rest)
        return result
      } else {
        return fnc(...num)
      }

    }

  }
  let a = currying(sumFn)(1)(2)(3)()
  let b = currying(sumFn)(1, 2)(3, 4)(5)()
  let c = currying(sumFn)(1)(2, 3, 4)(5, 6)()
  console.log(a, b, c)  //6  15  21

</script>
举报

相关推荐

0 条评论