学习python 、h5、js需要会高等函数吗?

JavaScript07

学习python 、h5、js需要会高等函数吗?,第1张

不用

高阶函数

编辑

原理

在数学和计算机科学中,高阶函数是至少满足下列一个条件的函数:

接受一个或多个函数作为输入

输出一个函数

在数学中它们也叫做算子(运算符)或泛函。微积分中的导数就是常见的例子,因为它映射一个函数到另一个函数。

在无类型 lambda演算,所有函数都是高阶的;在有类型 lambda演算(大多数函数式编程语言都从中演化而来)中,高阶函数一般是那些函数型别包含多于一个箭头的函数。在函数式编程中,返回另一个函数的高阶函数被称为柯里化的函数。

在很多函数式编程语言中能找到的 map 函数是高阶函数的一个例子。它接受一个函数 f 作为参数,并返回接受一个列表并应用 f 到它的每个元素的一个函数。[1]

范例

高阶函数的其他例子包括函数复合、积分和常量函数 λx.λy.x。

这是一个Python的例子, 其中函式 g() 有一引数以及回传一函数. 这个例子会打印 100 ( g(f,7)= (7+3)×(7+3) ).

12345   def f(x):return x + 3def g(function, x):return function(x) * function(x)print g(f, 7)   

说明 f1 是个“高阶”函数。

f1()() 说明 f1() 执行的结果也是个函数,假设为 f2。

f1()()

表示 f2()

那么, f1()()() 可表示为

f2()()

说明 f2() 的返回值右是一个函数。

为了表达清晰,说的有点绕。

总结,f1() 返回值是一个函数,这个函数的返回值依然是函数。