gpt4 book ai didi

javascript - 为什么 Ramda 源码有不止一个 curry 函数,Redux compose 也有?

转载 作者:行者123 更新时间:2023-12-04 01:42:57 24 4
gpt4 key购买 nike

Ramda source code中有_curry1 _curry2 _curry3 _curryN函数

此模式出现在 redux compose function 中还有

我想知道为什么他们使用这种模式而不是只对所有情况使用通用函数?

这种模式会提高性能吗?

最佳答案

除了 Kousha 的正确答案之外,我想补充一点,_ 前缀的函数是 Ramda 的内部,不会在任何地方公开。

Ramda(免责声明:我是其创始人和主要作者之一)公开了 curryN 及其有用的注释,curry。其他仅在内部使用。他们承担了一些额外的负担,尤其是在帮助占位符方面。但最主要的是,它们并不是成熟的 Ramda curry 函数,只是尚未准备好暴露的内部助手。我们可以修复它们,使它们成为原样,这是引用的评论的重点,但我们从来没有费心过。会有一些性能上的好处,这可能就是 Redux 这样做的原因,但我们没有发现柯里化(Currying)对性能造成巨大的影响,至少自从我们编写了这些帮助程序以来没有。

在像 Sanctuary 这样更严格的库中,它们是唯一允许的 API,因为输入不允许是可变的。不过,Ramda 在支持可变函数方面做得相当不错。 Ramda 选择不走那条路。

关于javascript - 为什么 Ramda 源码有不止一个 curry 函数,Redux compose 也有?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59833391/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com