github怎么实现无限累加的一个函数

这篇文章主要讲解了“github怎么实现无限累加的一个函数”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“github怎么实现无限累加的一个函数”吧!

sum(1, 2, 3).valueOf() //6
sum(2, 3)(2).valueOf() //7
sum(1)(2)(3)(4).valueOf() //10
sum(2)(4, 1)(2).valueOf() //9
sum(1)(2)(3)(4)(5)(6).valueOf() // 21

 

这是一个关于懒计算的函数,使用 sum 收集所有累加项,使用 valueOf 进行计算

  1. sum 返回一个函数,收集所有的累加项,使用递归实现
  2. 返回函数带有
        valueOf 属性,用于统一计算
function sum (...args) {
  const f = (...rest) => {
    return sum(...[...args, ...rest])
  }
  f.valueOf = () => {
    return args.reduce((x, y) => x + y, 0)
  }
  return f
}
     

感谢各位的阅读,以上就是“github怎么实现无限累加的一个函数”的内容了,经过本文的学习后,相信大家对github怎么实现无限累加的一个函数这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/219908.html

(0)
上一篇 2022年1月2日
下一篇 2022年1月2日

相关推荐

发表回复

登录后才能评论