2020年面向前端开发人员的10个很棒的 JS 库
虽然JavaScript本身很棒,但有它对应生态圈也很重要,这些圈会让 JS 更好。开发人员在开始一个新的中等项目时经常喜欢重新写轮子,这是一个糟糕的策略,使用第三方库是有意义的。因为这样的库有明确的用途,有更长生成的迭代,如果遇到问题更容易找到解决方法,最主要的一点是提高开发效率,缩短开发周期。
这里并不是说我们每个项目都要使用第三方库。在我们的职业生涯初期,最好自己能编写代码以进行学习。但是在许多项目中,在有意义的地方使用库是一个不错的策略。
这里推荐 10
个 JS 库,这些库都有很好的文档,也非常流行,并一直在维护中。
1. Ramda
github:https://github.com/ramda/ramda
文档:https://ramdajs.com/docs/
Ramda
是一个用于函数式编程的很酷的 JS 库,目前在GitHub上有18000
个星星。JS 的一个优点是开发人员可以选择函数式编程还是面向对象编程。这两种方法各有利弊,但是如果你喜欢函数式编程,那么一定要看看Ramda
。
主要功能是:
不变性和无副作用的函数
几乎所有的函数都是自动柯里化的
参数设置为Ramda函数,便于进行柯里化
2. Lodash
github: https://github.com/lodash/lodash
文档: https://lodash.com/
Lodash仍然是最流行和最有用的 JS 库之一。它免去了处理字符串、数组、对象等的麻烦。目前它在GitHub上有43000
颗星星。
有用的功能:
遍历字符串,对象和数组
创建复合函数
操作和测试值
3. Moment
github: https://github.com/moment/moment
文档: https://momentjs.com/
如果必须处理日期的操作、验证、解析或格式化,Moment
可能是最好的 JS 库。它很轻,很完善,在GitHub上有43000
多颗星,它可以在浏览器和Node.js
中工作。
以下是一些有关Moment的示例:
moment().startOf('day').fromNow(); //8 hours ago
moment('2019-15-11').isValid() //false
moment('2019-02-21').isValid() //true
4. Highlight.js
github: https://github.com/highlightjs/highlight.js
文档: https://highlightjs.org/
Highlight.js 是一个用于语法高亮显示的库,可在浏览器和服务器上使用。它几乎可以与任何Markdown一起使用,并具有自动语言检测功能。
Highlight.js
将在<pre> <code>
标记之间搜索编程代码,尝试自动检测语言并突出显示语法。它还支持不同的配色方案。
下面是一个用 JS 编写的代码片段和来自代码编辑器的公共主题的示例
5. D3
github: https://github.com/d3/d3
文档: https://d3js.org/
D3是最流行的数据可视化库,目前在GitHub上有89,500
星。它使用Web标准,并利用现代浏览器的强大功能,使数据栩栩如生。
6. Three.js
github: https://github.com/mrdoob/three.js
文档: https://threejs.org/
Three.js是出色的JS 3D库,它使用 WebGL 作为主要渲染器,但也支持其他渲染器,例如Canvas 2D
,SVG
和CSS3D
。它在GitHub上有58,000
个Star,我们可以用它创建非常酷的东西。
7. Voca
github: https://github.com/panzerdp/voca
文档: https://vocajs.com/
Voca
是一个用于处理字符串的优秀 JS 库。目前在GitHub上有2,800
颗星。我们可以使用它来操作字符串,如更改大小写、修剪、pad、slugify、latinise、截断、转义等。
其他功能包括:
完整的函数集,可操纵,chop,格式化,转义和查询字符串
易于阅读和搜索的文档
支持多种环境,例如 Chrome,Firefox,Node.js
100%的代码覆盖率,没有依赖性
8. Immutable.js
github: https://github.com/immutable-js/immutable-js
文档: https://immutable-js.github.io/immutable-js/
使用不可变数据结构具有一些主要优点,例如简化了应用程序开发,无防御性拷贝以及高级缓存概念。
Immutable.js
供了不变的数据结构,如列表,堆栈,映射,集合等。
9. Hammer.js
github: https://github.com/hammerjs/hammer.js
文档: http://hammerjs.github.io/
Hammer.js
是一个 JS 库,具有20,900
个GitHub Stars,可为Web应用程序带来多点触摸手势。它很小,没有任何依赖性,并且可以识别由触摸,鼠标或指针事件产生的手势。默认情况下,它会添加用于点击,双击,滑动,按下等的识别器,但是您可以定义自己的此类识别器集。
10. Leaflet
github: https://github.com/Leaflet/Leaflet
文档: https://leafletjs.com/
在创建移动友好的交互式地图时,Leaflet
是一个很棒的 JS 库。它是开源的,在GitHub上有26700
个星星,非常轻量,并且拥有大多数开发人员需要的所有特性。
它可以在所有主流的移动和桌面平台上开箱即用,可以通过插件进行扩展,并且有一个文档良好的、简单的API。
作者:Simon Holdorf 译者:前端小智 来源:medium
原文:https://hackr.io/blog/best-javascript-frameworks
交流
「每日挑战12」纯CSS3实现响应式推荐卡片
这三个精巧且很棒JS库,值得你亲手试试
这些优化技巧可以避免我们在JS中过多的使用IF语句
适合前端开和UI设计的20多个最佳ICON库
27个CSS面试的高频考点助力金三银四
纯CSS特效,5分钟带你学会制作有个性的滚动条
2020年面向前端开发人员的10个很棒的 JS 库相关推荐
- 2020年面向前端开发人员的10个最佳CSS框架
" NASA已将机器人降落在火星上,并且一些开发人员仍在他们网站中div的中心对齐方面苦苦挣扎." 这个笑话包含很多真相.对于UI / UX设计人员来说,要制作一个在每个浏览器上看 ...
- python 创意项目_针对python开发人员的10个很棒的python项目创意
python 创意项目 The joy of coding Python should be in seeing short, concise, readable classes that expre ...
- 针对Python开发人员的10个很棒的项目创意
Python是世界上使用最广泛的编程语言之一,并且可以为其通用性质做出贡献,这使其成为解决各个领域问题的合适工具.使用Python,您不仅可以为网络开发程序,还可以为桌面和命令行开发程序.Python ...
- 适用于ios5的应用_适用于设计人员和开发人员的10个很棒的iOS应用
适用于ios5的应用 Designers and developers rely heavily on the computer for their work. However, the work a ...
- 20个面向前端开发人员的文档和指南(第4号)
It's that time again to get learning! Well, in this industry, that time is always I suppose. This is ...
- 面向对象的前端开发_20多种面向前端开发人员的文档和指南(第9号)
面向对象的前端开发 It's that time again to get learning! As before, I've collected a number of different lear ...
- 面向对象的前端开发_面向前端开发人员的GraphQL指南
面向对象的前端开发 by Schalk Venter 由沙克·文特(Schalk Venter) 面向前端开发人员的GraphQL指南 (A guide to GraphQL for front-en ...
- 如何成为前端开发人员的10个技巧!以及前端学习路线
为你总结了如何成为前端开发人员的10个技巧!以及前端学习路线,欢迎参考! 前端开发需要学习什么?或者需要掌握哪些技能? 在准备学习前端前,您可能不确定从哪里开始.选择什么编程语言,使用什么工具,框架和 ...
- 42个面向前端开发人员的很棒JavaScript 库和框架
英文 | https://javascript.plainenglish.io/42-good-javascript-libraries-and-frameworks-for-front-end-de ...
- 2020年 面向高级开发人员的 iOS面试问题
在本文中,您将找到针对高级开发人员的iOS面试问题和解答. 当您准备进行技术性的iOS面试时,重要的是要了解您可能会被问到的话题以及经验丰富的iOS开发人员的期望.这些问题被许多公司用来衡量iOS候选 ...
最新文章
- 2021年大数据Flink(四十):​​​​​​​Flink模拟双十一实时大屏统计
- RDA PQ工具使用 (Adi Analysis)
- linux中tree命令
- 清华大学《操作系统》(二十三):I/O子系统
- java判断两个时间区间是否有重合
- Python-OpenCV基本操作
- oracle学习笔记(十三) 查询练习(三) 子查询查询
- 《Redis官方教程》-Redis安全
- VR 游戏开发资料收集
- java并发编程的艺术——第四章总结
- 基于JSP和sql server小区物业管理系统毕业论文
- Python实现层次分析法
- matlab绘制图像的直方图、杆状图和折线图等
- 程序员该如何对付日常小病小痛?
- 中国地理省份行政区划,代表文化收集整理
- Pluralistic Image Completion—多元图像补全—摘要翻译—测试教程(附源码)——CVPR 2019
- JZOJ5444. 【NOIP2017提高A组冲刺11.2】救赎
- tipask 3.5问答系统部署说明,超详细命令行部署,挂载iso,可内网使用。
- Codeforces 1144G(dp)
- 论文笔记:AAAI 2021 Beyond Low-frequency Information in Graph Convolutional Networks
热门文章
- AD9在PCB中放大元件后,元件表面出现网格
- 5、RH850 F1 定时器TAUJ功能和配置
- Windows 10 下使用 VMPlayer 16 新建 CentOS 7 64位 虚拟机
- 修复 VM Player 断网问题 20121215T1402
- Reflector使用详解,把DLL文件转换为.cs文件
- oracle 卸载asm,卸载oracleasm实验模拟
- 英语数字听力学习软件操作
- zend studio html插件安装,Zend Studio使用教程:将Zend Studio作为插件安装
- 【已解决】NC65收款合同查询数据最多只显示5000条
- svn指定版本代码对比的方法