高阶函数-懂了你就进入升华了
程序员文章站
2024-03-26 10:02:11
...
首先看这个高阶函数
const compose = (...fns) =>(arg) => fns.reduce(
(composed, f) => f(composed),
arg
)
书中解释
函数compose接受函数作为参数,并且会返回一个独立的函数。在上述代码中,扩展运算符主要用于将这些函数参数添加到名为fns的数组中。随后将会返回可以接受一个参数的函数,及arg。当该函数被调用时,数组fns将会作为在函数之间传递数据的起始管道。这些参数会作为composed的初始值,然后它会累计reduce回调函数的返回值。注意,回调函数会接受两个参数:(一个composed,另一个是代表函数的f),每个函数被调用后的结果累积就是上一函数的输出结果)总之,最后一个函数被调用并返回了结果。
看的我是云里雾里,没辙我把这段代码敲了两遍,然后把这段中文解释也手动打了一遍。最终,得出一个结论,这个高阶函数牛逼啊。但是让我说清楚点,我还是解释不清楚,大家有什么好的想法。
欢迎留言参与讨论
我将随时更新关于这个牛逼高阶函数的理解
上一篇: python类的定义以及__dict__和__new()__作用
下一篇: python基础8
推荐阅读