每天一道面试题——请实现add(1,2)(3)【二】

时间:2021-03-17 14:18:59   收藏:0   阅读:0

前言

考点: 函数柯里化

内容

题目

请实现add(1,2)(3)

答案

function add (...args) {
    return args.reduce((a, b) => a + b)
}
?
function currying (fn) {
    let args = []
    return function temp (...newArgs) {
        if (newArgs.length) {
            args = [...args,...newArgs]
            return temp
        } else {
            let val = fn.apply(this, args)
            args = [] 
            return val
        }
    }
}
?
评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!