先看一个例子:
1 2 3 4 5Test html 6 7 8 9 21 22
执行结果是12,就是4+3+5
javascript支持函数式编程,函数是first-class object,就是说函数可以作为参数,返回值也可以是函数。
上面的例子里,add(4)函数返回一个函数,然后可以继续执行作为函数使用,add(4)(3)返回值也是函数,继续使用,才能最后执行到第13行,返回需要的结果。
这种将需要多个参数的函数分解为一次接受一个参数,所有参数接收完再执行得到结果的方式,就叫currying。
可以参照: