兼容Lodash的真正替代者

大家好,我是农村程序员,独立开发者,前端之虎陈随易。

这是我的个人网站:https://chensuiyi.me,欢迎一起交朋友~


今天给大家分享一个前端工具库 Lodash 的替代品 es-toolkit

仓库地址:https://github.com/toss/es-toolkit

有人可能要纳闷了,年年那么多替代品,年年都替代不了,别浪费时间了。

哎,请留步,这回还真有替代的可能性,请听我这个前端记者,娓娓道来。

咳咳,众所周知 (开始了),Lodash 是踩着 Underscore 的肩膀上来的。

什么?Underscore 你也不知道?那你得多看看我的文章,涨涨见识。

Underscore 是一个 JavaScript 工具库,于2009年首次发布,它为 JavaScript 开发者提供了一系列有用的函数式编程工具。

简单来说,Underscore 是 JavaScript 广为流传的函数工具库的开山鼻祖。

Lodash 的诞生 2012 年,John-David Dalton 创建了 Underscore 的一个分支,并将其命名为 Lo-Dash (后来改名为 Lodash)。

Lodash 最初被推广为 Underscore 的替代品,提供了更好的性能和额外的功能。

正式发布 Lodash 的第一个版本于 2012年4月23日 正式发布,这标志着 Lodash 作为一个独立项目的开始。

截至文本发布 (2024年10月21日),Lodash 的最新稳定版本是 4.17.21,而且已经在这个版本停留了4年之久。

正所谓,一鲸落,万物生,时代的发展,技术的演进,更加先进的函数工具库,纷纷如雨后春笋一般冒了出来。

不过呢,也反映了一个问题,开源不是一个简单的事情,用爱发电终究也会有电量不足的时候。

那么,继承者们 都有哪些呢?这是本文发表时,笔者查到的数据。

  1. Ramda 代码最后提交于 2 个月前,最后发版于 5 个月前。
  2. Rambda 代码最后提交于 1 个月前,最后发版于 2 个月前。
  3. Radash 代码最后提交于 7 个月前,最后发版于 7 个月前。
  4. nodash 代码已存档,无人维护。
  5. moderndash 代码最后提交于 4 个月前,最后发版于 5 个月前。
  6. es-toolkit 代码最后提交于10分钟前,最后发版于5天前。

光从代码的维护,更新上来说,笔者今天推荐的 es-toolkit 是数据最健康的。

那么,再来看看功能。

首先看看 es-toolkit 的口号:

现代 JavaScript 实用程序库,速度提高了 2-3 倍,体积缩小了 97%,这是对 lodash 的重大升级。

非常地振奋人心。

再来看看其他数据,6500star109个贡献者100%的测试覆盖率,数据很不错。

最吸引我的地方呢,就是可以和 Lodash 无缝迁移。

由于目前还在发展开发中,所以兼容函数还没有完全覆盖。

不过每次发版我都看了更新日志,都会有一些新的函数、兼容、性能、BUG 方面的处理。

只要勤快地维护,假以时日,必成最终赢家。

目前我已经用在了我自己的项目中,期待 es-toolkit 越来越好。

希望大家可以给它点点 star,提供一些鼓励和支持,仓库地址:https://github.com/toss/es-toolkit


本文由前端记者,前端之虎陈随易 撰稿。

如果你有好的作品、工具、内容、项目等推荐,欢迎从笔者的网站 https://chensuiyi.me 联系我,我们下次再见~

相关推荐
CoderYanger1 天前
优选算法-优先级队列(堆):75.数据流中的第K大元素
java·开发语言·算法·leetcode·职场和发展·1024程序员节
CoderYanger1 天前
C.滑动窗口——1423. 可获得的最大点数
java·开发语言·算法·leetcode·1024程序员节
CoderYanger2 天前
优选算法-队列+宽搜(BFS):72.二叉树的最大宽度
java·开发语言·算法·leetcode·职场和发展·宽度优先·1024程序员节
CoderYanger2 天前
优选算法-字符串:63.二进制求和
java·开发语言·算法·leetcode·职场和发展·1024程序员节
CoderYanger3 天前
优选算法-栈:67.基本计算器Ⅱ
java·开发语言·算法·leetcode·职场和发展·1024程序员节
讨厌下雨的天空3 天前
网络基础
网络·1024程序员节
金融小师妹4 天前
基于NLP语义解析的联储政策信号:强化学习框架下的12月降息概率回升动态建模
大数据·人工智能·深度学习·1024程序员节
mjhcsp4 天前
C++ 动态规划(Dynamic Programming)详解:从理论到实战
c++·动态规划·1024程序员节
金融小师妹5 天前
基于机器学习框架的上周行情复盘:非农数据与美联储政策信号的AI驱动解析
大数据·人工智能·深度学习·1024程序员节
渣渣盟5 天前
Flink分布式文件Sink实战解析
分布式·flink·scala·1024程序员节