码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2021-03-17 14:18:59      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:curry   内容   war   前言   lse   his   return   面试   答案   

前言

考点: 函数柯里化

内容

题目

请实现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
        }
    }
}
?

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

标签:curry   内容   war   前言   lse   his   return   面试   答案   

原文地址:https://www.cnblogs.com/wangyang0210/p/14540998.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!