前言
考点: 函数柯里化
每天一道面试题,以后只更新于微信订阅号"夜雨成诗",点击右面的扫码添加即可
内容
题目
请实现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 } } }
...args中...为扩展运算符
学无止境,谦卑而行.