推荐11个实用的JavaScript库
作者 | Jonathan Saring
编辑 | 无明
JavaScript 仍然是 2018 年最受欢迎和使用最为广泛的编程语言,因此 JavaScript 生态系统也会继续发展壮大。
然而,JavaScript 的标准库仍然继续保持“短小精悍”的身材。为了填补标准库功能方面的空白,在过去几年中,GitHub 上出现了很多流行的 JavaScript 库。以下列出了 11 个有用的库,这些库的维护状态均很活跃。
1.Underscore 和 Lodash(dah)
可能大多数人都知道这两个库。Underscore 的目的是为 JavaScript 中的常见任务提供实用的函数。Lodash 是下载量最大和被依赖最多的库之一,旨在为数组、字符串、object 和 argument 对象提供更一致的跨环境迭代支持,并已成为 Underscore 的超集。这两个库由相同的核心贡献者维护,在技术选型时完全可以考虑使用它们。
Lodash - https://github.com/lodash/lodash
Underscore - https://github.com/jashkenas/underscore
2. Ramda
在 GitHub 上的 Star 已经超过 12,000,这个库专为函数式编程而设计,可以轻松创建不改变用户数据状态的函数式管道。Ramda 的核心设计理念是创建具有不变性和无副作用的函数。所有的函数会被自动柯里化,并根据易用性安排参数的顺序。
Ramda - https://github.com/ramda/ramda
3. MathJS
在 GitHub 上的 Star 已经超过 6000,这个库是 JavaScript 和 Node.js 的数学扩展库,与 JavaScript 内置的 Math 库兼容。该库包含一个灵活的表达式解析器,能够运行符号计算,并提供了一系列内置函数和常量。用户还可以对其进行扩展。
MathJS - https://github.com/josdejong/mathjs
4. Moment
在 GitHub 上的 Star 已经超过 37,000,是一个 JavaScript 日期和时间操作库,用于解析、验证、操作和格式化日期。Moment 可以在浏览器和 Node.js 中运行。从 2.10.0 版本开始迁移到 ECMAScript 6。
Moment - https://github.com/moment/moment
另外两个同类的库:
Date-fns(10,000 个 Star)- https://github.com/date-fns/date-fns
DateJS - https://github.com/datejs/Datejs
5. Sugar
在 GitHub 上的 Star 已经超过 3500,主要用于处理本地对象。这个库支持自定义构建,还提供了模块化的 npm 包,因此可以只使用其中必要的部分模块(也可以与 Bit 结合使用),用户还可以通过自定义方法或使用插件来应对特定的使用场景。
Sugar - https://github.com/andrewplummer/Sugar
6. Lazy
在 GitHub 上的 Star 将近 5000,是一个功能强大的 JavaScript 库,它的 lazy 引擎“尽可能地少做一些工作”,同时保持足够的灵活性。
Lazy - https://github.com/dtao/lazy.js
7. CollectJS
在 GitHub 上的 Star 超过 3200,主要用于处理 JavaScript 中的数组和对象,无需其他依赖,提供了几十个有用的功能和 API,这些 API 几乎与 Laravel Collections 5.5 相同。该库的维护状态很活跃,值得关注。
CollectJS - https://github.com/ecrmnn/collect.js
8. ChanceJS
Chance 在 GitHub 上的 Star 超过 3200,一个简单的随机对象生成器,用于生成随机的字符串、数字等。在编写自动化测试代码或任何需要随机对象的地方,可以用它来减少单调的工作。
ChanceJS - https://github.com/chancejs/chancejs
9. ChartJS
在 GitHub 上的 Star 将近 40,000 个,提供了 8 种不同类型的数据可视化,每种类型都支持动画和定制。借助 Chart.js,我们可以使用<canvas>标签创建简单的HTML5图表,而且在所有现代浏览器中都具有出色的渲染性能。
ChartJS - https://github.com/chartjs/Chart.js
10. Polished
在 GitHub 上的 Star 超过 3500 个,由 styled-components 团队开发,是一个非常优秀的轻量级工具集,支持使用 JavaScript 编写具有 SASS 风格辅助函数和 mixin 的样式。该库与 styled-components、Aphrodite、Radium 或简单的内联样式兼容。这个库可以在 GitHub 上找到,Bit 社区(非官方)也单独提供所有的功能,因此可以单独安装、导入和使用。
Polished - https://github.com/styled-components/polished
Bit 社区提供的单独安装版 - https://bitsrc.io/ranm8/polished
11. Mout
Mout.js 是一组模块化的 JavaScript 库,可以在浏览器或 node.js 中运行,提供类似于其他语言标准库(Python、Ruby、PHP 等)中的辅助方法。mout.js 允许仅加载必需的模块或函数,并提供了一致的 API,规范了跨浏览器行为。
Mout - https://github.com/mout/mout
特别推荐
Bit utils
一个模块化和高性能的库,已经被用在 Bit 的 web hub 中。这些函数可使用 NPM/Yarn 进行单独安装,用户也可以创建自己的集合,并从不同的库和项目中收集有用的功能。
Bit utils - https://bitsrc.io/bit/utils
Voca
一个用于操作字符串的 JavaScript 库。它提供的功能包括大小写转换、trim、pad、slugify、latinise、sprintf、truncate、escape 等。用户可以加载单个函数,以便最小化应用程序的构建。该库具有很高的测试覆盖率,并且不依赖其他库。
Voca - https://github.com/panzerdp/voca
Licia
只有 400 个 Star,这个有趣的项目基本上是一个简单但有用的 JavaScript 片段集合,具有很高的测试覆盖率,文档也很齐全。
Licia - https://github.com/liriliri/licia
推荐11个实用的JavaScript库相关推荐
- 推荐11个实用Python库
1.delorea 非常酷的日期/时间库 from delorean import Delorean EST = "US/Eastern"d = Delorean(timezone ...
- python代码库-推荐11个实用Python库
1) delorean 非常酷的日期/时间库 from delorean import Delorean EST = "US/Eastern" d = Delorean(timez ...
- python收费库_推荐11个实用Python库
1.delorean 非常酷的日期/时间库 from delorean import Delorean EST = "US/Eastern" d = Delorean(timezo ...
- 推荐10个Github热门Python库,非常实用!
来源:量子位 本文推荐10个实用的python库,有FastAPI的升级版Typer.将CLI变成彩色的Rich.基于GUI框架的Dear PyGui.还有精简报错信息的PrettyErrors--下 ...
- 2018 年你需要知道的 11 个 JavaScript 库
译者按:你可能已经用到Underscore或者Lodash.本文列举了11个常用的库来提高开发效率. 为了保证可读性,本文采用意译而非直译.另外,本文版权归原作者所有,翻译仅用于学习. JavaScr ...
- 11个你不应该错过的JavaScript库
11个你不应该错过的JavaScript库 近年来,我们大家都看到JavaScript像野火一样传播,设法进入编程的每个领域,成为世界上最常用的语言之一. 同样,JavaScript框架和库的数量呈指 ...
- 四十个非常实用的轻量级JavaScript库
流行的JavaScript库,如jQuery, MooTools, Prototype, Dojo和YUI等,完成起常见的JavaScript任务来得心应手.这些JS库为客户端动作(events).动 ...
- 推荐12个最好的 JavaScript 图形绘制库
众多周知,图形和图表要比文本更具表现力和说服力.图表是数据图形化的表示,通过形象的图表来展示数据,比如条形图,折线图,饼图等等.可视化图表可以帮助开发者更容易理解复杂的数据,提高生产的效率和 Web ...
- 15个非常实用的JavaScript表单验证库
来源:web前端开发 https://mp.weixin.qq.com/s/p9s9cmAt2MZeCgmD2LC5Sg 客户端验证在任何项目都是不可缺少的,很多时候我们需要在用户提交到服务器之前给予 ...
最新文章
- python推荐书籍-7本经典的Python书籍,你都读过了么?
- Yii框架 ajax案例
- mysql在线模拟器_SQL在线模拟器
- php cms 的模板修改,phpcms v9后台登陆模板修改方法和程序版本更新提示修改方法...
- oracle having用法
- python电脑推荐_6款Python必备的可视化工具推荐
- 基于模板的通用代码生成器LKGenerator(三)-模板示例
- dedecms 封面模板和列表模板有什么不同
- oracle11g数据库登录01017,连接oracle数据库报错ORA-01017、重置用户的密码
- VC6.0 操作Excel表格
- Android xUtils框架最全使用详解
- lisp 焊缝标注_钢结构深化设计实施方案.doc
- 对数与指数函数的求导
- MitoZ|动物线粒体基因组组装注释软件
- 有了域名空间服务器怎么做网站,有了域名和空间怎么建网站?
- 重构分析21: 被拒绝的遗赠(Refused Bequest)
- 贝壳云php源码,[2021-03-28] 56+、56+O S905x3、S922x、贝壳云、我家云、微加云等OP固件...
- 关于AD前面的电压跟随器
- linux shell 基本命令大全,常用的Linux shell命令详解收集整理
- java并发编程实战wwj----------------------第二阶段-------Future框架-------21-22-23