推薦15個(gè)Javascript常用工具類
今天給大家分享15個(gè)Javascript常用工具類,希望大家喜歡。
js 常用工具類
- lodash 一個(gè)一致性、模塊化、高性能的 JavaScript 實(shí)用工具庫。
- xijs 一款面向復(fù)雜業(yè)務(wù)場景的 javascript 工具庫
- ramda 一個(gè)很重要的庫,提供了許多有用的方法,每個(gè) JavaScript 程序員都應(yīng)該掌握這個(gè)工具
- day.js 一個(gè)輕量的處理時(shí)間和日期的 JavaScript 庫,和 Moment.js 的 API 設(shè)計(jì)保持完全一樣, 體積只有 2kb
- big.js 一個(gè)小型,快速的 JavaScript 庫,用于任意精度的十進(jìn)制算術(shù)運(yùn)算
- qs 一個(gè) url 參數(shù)轉(zhuǎn)化 (parse 和 stringify)的輕量級(jí) js 庫
- decimal.js 實(shí)現(xiàn) JavaScript 的任意精度的十進(jìn)制類型庫
表單校驗(yàn)
- Validator.js 一個(gè)強(qiáng)大的 js 表單校驗(yàn)庫
- Validate.js 致力于提供一種驗(yàn)證數(shù)據(jù)的跨框架和跨語言方式的 js 庫, 已通過 100%代碼覆蓋率的單元測試
dom 庫
- JQuery 封裝了各種 dom/事件操作, 設(shè)計(jì)思想值得研究借鑒
- zepto jquery 的輕量級(jí)版本, 適合移動(dòng)端操作
- fastclick 一個(gè)簡單易用的庫,它消除了移動(dòng)端瀏覽器上的物理點(diǎn)擊和觸發(fā)一個(gè) click 事件之間的 300ms 的延遲。目的就是在不干擾你目前的邏輯的同時(shí),讓你的應(yīng)用感覺不到延遲,反應(yīng)更加靈敏。
文件處理
- file-saver 一個(gè)在客戶端保存文件的解決方案,非常適合在客戶端上生成文件的 Web 應(yīng)用程序
- js-xlsx 一個(gè)強(qiáng)大的解析和編寫 excel 文件的庫
lodash
官方網(wǎng)址:https://www.lodashjs.com/
Github(55.1k): https://github.com/lodash/lodash
lodash 一個(gè)一致性、模塊化、高性能的 JavaScript 實(shí)用工具庫。
如下圖:
xijs
官方網(wǎng)址:http://h5.dooring.cn/xijs/
Github: https://github.com/MrXujiang/xijs
xijs 是一款面向復(fù)雜業(yè)務(wù)場景的 javascript 工具庫,目前已支持:
- parser json 解析器, 在原生 json api 基礎(chǔ)上支持序列化和反序列化函數(shù), 正則等
- store 一款支持設(shè)置過期時(shí)間且支持回調(diào)的本地緩存庫, 基于 localStorage 二次封裝
- formatDate 支持自定義的時(shí)間格式化函數(shù)
- obj2url 將對(duì)象轉(zhuǎn)換成編碼后的 url 字符串
- url2obj 將 url 字符串轉(zhuǎn)換成對(duì)象
- isPc 判斷設(shè)備是否為 pc 端類型
- debounce 防抖函數(shù)
- throttle 節(jié)流函數(shù)
- randomStr 生成指定個(gè)數(shù)隨機(jī)字符串的函數(shù)
- uuid 生成唯一 id
- shuffle 數(shù)組亂序, 洗牌算法
- randomStr 生成隨機(jī)字符串
- transformTree 將扁平數(shù)組轉(zhuǎn)換成樹結(jié)構(gòu)
- 等等開發(fā)中常用的工具函數(shù), 輕松提高業(yè)務(wù)研發(fā)效率.
如下圖:
ramda
官方網(wǎng)址:https://ramdajs.com/
Github(22.6k): https://github.com/ramda/ramda
ramda 一個(gè)很重要的庫,提供了許多有用的方法,每個(gè) JavaScript 程序員都應(yīng)該掌握這個(gè)工具
如下圖:
dayjs
官方網(wǎng)址:https://dayjs.gitee.io/zh-CN/
Github(41.5k): https://github.com/iamkun/dayjs/
Day.js 是一個(gè)輕量的處理時(shí)間和日期的 JavaScript 庫,和 Moment.js 的 API 設(shè)計(jì)保持完全一樣.
如下圖:
big.js
官方網(wǎng)址:http://mikemcl.github.io/big.js
Github(4.7k): https://github.com/MikeMcl/big.js/
big.js一個(gè)小型,快速的 JavaScript 庫,用于任意精度的十進(jìn)制算術(shù)運(yùn)算
如下圖:
qs
Github(7.5k): https://github.com/ljharb/qs
qs 是一個(gè) url 參數(shù)轉(zhuǎn)化 (parse 和 stringify)的輕量級(jí) js 庫
如下圖:
decimal.js
官方網(wǎng)址:http://mikemcl.github.io/decimal.js
Github(5.2k): https://github.com/MikeMcl/decimal.js/
decimal.js 實(shí)現(xiàn) JavaScript 的任意精度的十進(jìn)制類型庫
如下圖:
validator.js
Github(20.6k): https://github.com/validatorjs/validator.js
Validator.js 是一個(gè)強(qiáng)大的 js 表單校驗(yàn)庫
如下圖:
Validate.js
官方網(wǎng)址:https://validatejs.org/
Github(2.6k): https://github.com/ansman/validate.js
Validate.js 致力于提供一種驗(yàn)證數(shù)據(jù)的跨框架和跨語言方式的 js 庫, 已通過 100%代碼覆蓋率的單元測試
如下圖:
JQuery
官方網(wǎng)址:https://jquery.com/
JQuery 封裝了各種 dom/事件操作, 設(shè)計(jì)思想值得研究借鑒
如下圖:
zepto
官方網(wǎng)址:https://zeptojs.bootcss.com/
zepto是 jquery 的輕量級(jí)版本, 適合移動(dòng)端操作
如下圖:
fastclick
官方網(wǎng)址:http://labs.ft.com/
Github(18.8k): https://github.com/ftlabs/fastclick
fastclick 一個(gè)簡單易用的庫,它消除了移動(dòng)端瀏覽器上的物理點(diǎn)擊和觸發(fā)一個(gè) click 事件之間的 300ms 的延遲。目的就是在不干擾你目前的邏輯的同時(shí),讓你的應(yīng)用感覺不到延遲,反應(yīng)更加靈敏。
如下圖:
file-saver
官方網(wǎng)址:https://www.npmjs.com/package/file-saver
file-saver 一個(gè)在客戶端保存文件的解決方案,非常適合在客戶端上生成文件的 Web 應(yīng)用程序
如下圖:
js-xlsx
官方網(wǎng)址:https://www.npmjs.com/package/file-saver
js-xlsx 一個(gè)強(qiáng)大的解析和編寫 excel 文件的庫
如下圖: