1、什么事柯里化
在计算机科学中,柯里化(Currying)是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数且返回结果的新函数的技术。柯里化的目的是减少代码冗余。它可以实现参数复用、提前确认、延迟运行等。
比如我们常见的add方法:
// add(1); // 1
// add(1)(2); // 3
// add(1)(2)(3); // 6
// add(1)(2, 3); // 6
// add(1, 2)(3); // 6
add(1, 2, 3); // 6
2、柯里化的封装
3、常见的考题
实现一个add方法,使计算结果能够满足如下预期:add(1)(2)(3)=6;add(1,2,3)(4)=10;add(1)(2)(3)(4)(5)=15;
总结:函数的柯里化,是 Javascript 中函数式编程的一个重要概念。它返回的,是一个函数的函数。其实现方式,需要依赖参数以及递归,通过拆分参数的方式,来调用一个多参数的函数方法,以达到减少代码冗余,增加可读性的目的。