关注
其实。。。就是函数柯里化curry,另外取值是调用valueOf,valueOf调用toString,所以改valueOf可以少一步
function curry(fn) {
let result = 0
const _fn = function () {
result += fn.apply(this, arguments)
return _fn
}
_fn.valueOf = function() {
const temp = result
result = 0
return temp
}
return _fn
}
function add() {
return Array.prototype.reduce.call(arguments, function(p, v) {
return p + v
}, 0)
}
add = curry(add)
add(2,3,4)(2)(3) === 14
这个是不定参数的,最后结果是数字,这个还有很多变种。。。参数固定的话可以把result改成数组,每次调用就push进去,最后取值时全部塞到被curry的函数里。具体实现有很多。可以一一尝试
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# xx岗简历求拷打 #
8210次浏览 96人参与
# 求职季如何保持心态不崩 #
211887次浏览 1456人参与
# 开工第一帖 #
27113次浏览 575人参与
# 面试反问你会问什么 #
168320次浏览 1736人参与
# 有转正机会的小厂实习值得去吗? #
8423次浏览 95人参与
# 工作不开心辞职是唯一出路吗 #
9437次浏览 38人参与
# 产品面经 #
263400次浏览 2177人参与
# 你收到了团子的OC了吗 #
1532320次浏览 11825人参与
# 掌握什么AI技能,会为你的求职大大加分 #
7070次浏览 321人参与
# 携程求职进展汇总 #
888603次浏览 5875人参与
# 远程面试的尴尬瞬间 #
328184次浏览 1916人参与
# 制造业的秋招小结 #
144776次浏览 2093人参与
# 拼多多求职进展汇总 #
848307次浏览 6593人参与
# 实习要如何选择和准备? #
145160次浏览 1566人参与
# 面试题刺客退退退 #
535047次浏览 7532人参与
# 非技术岗是怎么找实习的 #
295435次浏览 2594人参与
# 找工作时的取与舍 #
122874次浏览 878人参与
# 现在还是0offer,延毕还是备考 #
1298908次浏览 7929人参与
# 牛客租房专区 #
161621次浏览 1971人参与
# 你最讨厌面试被问什么 #
8526次浏览 103人参与
安克创新 Anker公司福利 841人发布