前端面试考点之函数柯里化

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 中函数式编程的一个重要概念。它返回的,是一个函数的函数。其实现方式,需要依赖参数以及递归,通过拆分参数的方式,来调用一个多参数的函数方法,以达到减少代码冗余,增加可读性的目的。

你可能感兴趣的:(前端面试考点之函数柯里化)