之前端需要学习哪些 js 库, 主流框架应该学 vue 还是 react ? 针对这些问题, 笔者来说说自己的看法和学习总结。
前端由于入行门槛低, 更新换代很快, 每年都会有大量新的框架和库出现, 也有大量库被淘汰。所以我们大可不必担心, 保持自己的学习步伐, 按需学习即可。接下来笔者也是按照不同前端业务的需求, 来整理一份能快速应用到工作中的 js 库, 以提高大家的开发效率.
js 常用工具类
lodash 一个一致性、模块化、高性能的 JavaScript 实用工具库。
【前端高效开发必备的 js 库】ramda 一个很重要的库,提供了许多有用的方法,每个 JavaScript 程序员都应该掌握这个工具
day.js 一个轻量的处理时间和日期的 JavaScript 库,和 Moment.js 的 API 设计保持完全一样, 体积只有 2kb
big.js 一个小型,快速的 JavaScript 库,用于任意精度的十进制算术运算
qs 一个 url 参数转化 (parse 和 stringify)的轻量级 js 库
dom 库
JQuery 封装了各种 dom/事件操作, 设计思想值得研究借鉴
zepto jquery 的轻量级版本, 适合移动端操作
fastclick 一个简单易用的库,它消除了移动端浏览器上的物理点击和触发一个 click 事件之间的 300ms 的延迟。目的就是在不干扰你目前的逻辑的同时,让你的应用感觉不到延迟,反应更加灵敏。
文件处理
file-saver 一个在客户端保存文件的解决方案,非常适合在客户端上生成文件的 Web 应用程序
js-xlsx 一个强大的解析和编写 excel 文件的库
网络请求
Axios 一个基于 Promise 的 HTTP 库,可用在 Node.js 和浏览器上发起 HTTP 请求,支持所有现代浏览器,甚至包括 IE8+
Superagent 基于 Ajax 的优化, 可以与 Node.js HTTP 客户端搭配使用
fly.js 一个基于 promise 的 http 请求库, 可以用在 node.js, Weex, 微信小程序, 浏览器, React Native 中
动画库
Anime.js 一个 JavaScript 动画库,可以处理 CSS 属性,单个 CSS 转换,SVG 或任何 DOM 属性以及 JavaScript 对象
Velocity 一个高效的 Javascript 动画引擎,与 jQuery 的 $.animate() 有相同的 API, 同时还支持彩色动画、转换、循环、画架、SVG 支持和滚动等效果
Vivus 一个零依赖的 JavaScript 动画库,可以让我们用 SVG 制作动画,使其具有被绘制的外观
GreenSock JS 一个 JavaScript 动画库,用于创建高性能、零依赖、跨浏览器动画,已在超过 400 万个网站上使用, 并且可以在 React、Vue、Angular 项目中使用
Scroll Reveal 零依赖,为 web 和移动浏览器提供了简单的滚动动画,以动画的方式显示滚动中的内容
Kute.js 一个强大高性能且可扩展的原生 JavaScript 动画引擎,具有跨浏览器动画的基本功能
Typed.js 一个轻松实现打字效果的 js 插件
fullPage.js 一个可轻易创建全屏滚动网站的 js 滚动动画库, 兼容性无可替代
iscroll 移动端使用的一款轻量级滚动插件
鼠标/键盘相关
KeyboardJS 一个在浏览器中使用的库(与 node.js 兼容).它使开发人员可以轻松设置键绑定和使用组合键来设置复杂的绑定.
SortableJS 功能强大的 JavaScript 拖拽库
图形/图像处理库
html2canvas 一个强大的使用 js 开发的浏览器网页截图工具
dom-to-image 一个可以将任意 DOM 节点转换为用 JavaScript 编写的矢量(SVG)或光栅(PNG 或 JPEG)图像的库
pica 一个在浏览器中调整图像大小,而不会出现像素失真,处理速度非常快的图片处理库
Lena.js 一个轻量级的可以给你图像加各种滤镜的 js 库
Compressor.js 一个使用本地 canvas.toBlob API 进行图像有损压缩的 js 库
Fabric.js 一个易于使用的基于 HTML5 canvas 元素的图片编辑器
merge-images 一个将多张图片合并成一张图的 js 插件
cropperjs 一款强大的图片裁切库, 支持灵活的图片裁切方式
Grade 一个基于图像中的前 2 种主要颜色生成互补渐变背景的库
以上这些 js 库不必每一样都去了解和深究, 技术都是为业务服务的, 所以我们按需使用和学习即可. 至于像 react 或者 vue 这种框架的相关生态, 笔者这里就不一一介绍了, 官网文档上都有非常详细的生态集, 感兴趣的朋友自行了解即可。
关键词:前端培训
推荐阅读
- java|Spring Boot + Vue 如此强大(你可能想不到的功能!)
- JS的面向对象(理解对象,原型,原型链,继承,类)
- JS几种数组遍历方式以及性能分析对比
- js|isNaN()
- var和let的for循环
- web前端学习圈|推荐 9 个 GitHub 上练手项目(在线考试、仿美团、仿抖音、仿B站、仿头条...)
- Leetcode79单词搜索(深度遍历解法)
- ES6之迭代器(iterator)
- JavaScript的防抖与节流