函数式JavaScript编程基础概念:Curry和Partial Application

techbrood 发表于 2017-01-05 16:36:51

标签: javascript, functional, curry

- +

本文介绍JS函数式编程中的两个概念:柯里(Curry)和部分应用程序(Partial Application)。

什么是应用程序(Application)

将函数应用于其参数以产生返回值的过程。

什么是部分应用程序

将函数应用于某些参数的过程,该部分应用的函数被返回供后续使用。换句话说,就是一个函数,接收一个多参数函数作为其参数,并返回一个使用较少参数的函数以完成下一步的调用,这个返回函数把部分参数作为固定值,而将其余参数作为参数以完成函数应用。

什么是柯里函数

Curry是一个函数,它接收一个以多参数作为输入的函数作为参数,并返回只带一个参数的函数。

不同的地方在于部分应用程序返回类型不确定,而Curry总是返回统一的函数类型。Curry可以被看作是部分应用程序的一个特例。


Curry可以分开其所有的参数,然后以标准方式来处理这些参数。

此外,Curry函数有一个内置的迭代器机制:Curry函数一次只部分应用在一个参数上,调用返回函数的作用是告诉函数接着执行应用程序的下一步。

possitive(12) views6029 comments0

发送私信

最新评论

请先 登录 再评论.
相关文章