// 比如我现在有一个callback的方法,需要指定三个参数 functioncallback(a, b, c) { return a + b + c } // 如果只需要两个参数,可以给第三个参数一个默认值,因为第三个参数有默认值,func.length值为2 functioncallback(a, b, c = 0) { return a + b + c // 相当于 return a + b + 0 } const r = currying(callback) r(1,2) // 返回接受剩余参数的新的函数 r(1,2,3) // 6 r(1)(2)(3) // 6 r(1,2,3,4) // r(...)(...)(...) is not a function 参数超过callback的参数报错