V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
lizy0329
V2EX  ›  程序员

你们觉得 Ramda 这个库咋样?

  •  
  •   lizy0329 · 1 天前 · 853 次点击

    官方文档: https://ramdajs.com/docs/

    链式操作,惊为天人,现在有 AI 来干活,感觉不是那么难写了

    8 条回复    2025-10-29 17:46:10 +08:00
    zhengfan2016
        1
    zhengfan2016  
       1 天前
    看着像小 lodash
    lizy0329
        2
    lizy0329  
    OP
       1 天前
    @zhengfan2016 个人觉得比 lodash 强大 10000 倍
    abc1310054026
        3
    abc1310054026  
       1 天前
    要比喻的话更像是链式 rxjs 。写的人爽了,维护的人不懂可就惨了
    qs
        4
    qs  
       1 天前 via iPhone
    16 年的时候好像写游戏客户端的同事就用这个来着

    当时就说很方便了
    lizy0329
        5
    lizy0329  
    OP
       1 天前
    @abc1310054026 现在可以完全交给 AI 写,方便多了
    justdoit123
        6
    justdoit123  
       8 小时 43 分钟前   ❤️ 1
    链式操作的场景其实没那么多。

    倒是可以多借鉴一些函数的功能,对常用的 list (或者数组)、dict 等操作进行封装。

    我写 python 看到满屏幕的 [x for x in yyy if ba la ba la] 都看麻了。

    另外,要提醒。这种链式组合操作的性能其实不好。当然,大部分场景无需考虑。

    但是,如果你在写一个很基础、会被高频调用的功能,这点性能损失可能就会被百倍千倍的放大。如果是这种场景,建议还是在一个 for 循环里,把要做的几个操作( filter 、map 、reduce 等)一次性全做了。
    zaneliu
        7
    zaneliu  
       6 小时 55 分钟前   ❤️ 1
    当我们在讨论 Ramda 时,究竟在讨论什么?

    不妨静下心来细想:

    是 lodash 吗? 是 RxJS 吗? 是链式调用吗?

    这些元素在 Ramda 中确实都有体现,但它们并非使用 Ramda 的真正理由,更不是其设计时的初衷。

    可以看下 Ramda 官网第一行醒目的简介:

    > Ramda
    > A practical functional library for JavaScript programmers.

    它声称自己是一个「实用的函数式( functional )」库。

    没错,它是一个完全遵循函数式(不只是简简单单的柯里化、闭包)的、彻底拥抱函数式思想的工具库。


    所以如果想真正用好 Ramda ,可以先从学习「函数式思想」开始。

    此处不展开,推荐一篇网易云大前端博文:

    https://musicfe.com/javascript-functional-programming-quickstart/

    函数式编程确实优雅、简洁,很多人初次接触也「惊为天人」,但软件开发没有银弹,我们追求的是**在合适的场景,用合适的技术,更高效地解决问题**。

    请勿陷入“为了用 Ramda 而用 Ramda”的误区。
    xuyihao
        8
    xuyihao  
       1 小时 31 分钟前
    @zaneliu 你这有点像 AI 生成的啊
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   3290 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 11:17 · PVG 19:17 · LAX 04:17 · JFK 07:17
    ♥ Do have faith in what you're doing.