utilscoreJS
前端業(yè)務(wù)代碼工具庫(不定時(shí)更新)
目的:高效率完成前端業(yè)務(wù)代碼
業(yè)務(wù)開發(fā)過程中,會經(jīng)常用到String,Number,Array,Object,Function,Date擴(kuò)展方法
凰浮、瀏覽器類型判斷
袜茧、base64
瓣窄、表單驗(yàn)證
俺夕、url常用方法
等常用函數(shù),為避免不同項(xiàng)目多次復(fù)制粘貼的麻煩姨谷,這里統(tǒng)一封裝梦湘,并發(fā)布到npm件甥,以提高開發(fā)效率嚼蚀。如果你也有常用的代碼管挟,歡迎為本項(xiàng)目提交pr.
安裝使用
- 直接下載
dist
目錄下的index.js使用轿曙,支持UMD,CMD,AMD各模塊化規(guī)范导帝。 - 使用npm/yarn/cnpm安裝穿铆。
瀏覽器:
<script src="./node_modules/utilscore/dist/index.js"></script>
<!-- <script src="./dist/index.js"></script> -->
<script>
let txt = utilscore.mask('12398765432',3,7)
console.log(txt) // => "123****5432"
</script>
npm
$ npm i utilscore
yarn
$ yarn add utilscore
cnpm
$ cnpm i utilscore
React荞雏、VueJS,小程序等javascript環(huán)境
// 完整引入
import utilscore from 'utilscore'
let txt = utilscore.mask('12398765432',3,7)
console.log(txt) // => "123****5432"
推薦使用方法
你真的不需要完整引入所有函數(shù),所以只引入需要使用的方法即可蜈彼。
import { mask } from 'utilscore'
let txt = mask('12398765432',3,7)
console.log(txt) // => "123****5432"
API文檔
Object
- deepClone 深度克隆幸逆。
- orderBy 返回按屬性(props)和順序(orders)排序的對象數(shù)組,用于數(shù)據(jù)排序暮现。
- findPathByLeafId 根據(jù) key 遞歸查找鏈帶關(guān)系栖袋。
Array
- uniqueBy 根據(jù)屬性去重?cái)?shù)組栋荸。
- unique 普通數(shù)組去重。
- maxNumBy 找出數(shù)組中該屬性最大值的一列爱沟。
- minNumBy 找出數(shù)組中該屬性最小值的一列呼伸。
- maxNum 數(shù)組中的最大值括享。
- mixNum 數(shù)組中的最小值珍促。
Date
- formatTime 格式化時(shí)間猪叙。
- formatHMS 將秒數(shù)轉(zhuǎn)為 xx小時(shí)xx分鐘xx秒 例如1h0m10s。
Function
- debounceStart 函數(shù)防抖 (立即執(zhí)行版)犬第。
- debounceEnd 函數(shù)防抖 (非立即執(zhí)行版)歉嗓。
- debounce 函數(shù)防抖 (完全版)鉴分。
- throttle 函數(shù)節(jié)流
String
- mask 根據(jù)位置,使用 * 遮蔽字符串。
- maskLeft 從位置左邊開始家浇,使用 * 遮蔽字符串钢悲。
- maskRight 從位置右邊開始舔株,使用 * 遮蔽字符串载慈。
- randomHexColorCode 生成一個(gè)隨機(jī)的十六進(jìn)制顏色代碼办铡。
- getCounts 返回元素出現(xiàn)的次數(shù)。
- uuid 全局唯一標(biāo)識符 UUID
- guid GUID:128位的數(shù)字標(biāo)識符
Number
- randomNum 返回指定范圍內(nèi)的隨機(jī)整數(shù)秤茅。
- round 將數(shù)字四舍五入到指定的小數(shù)位數(shù)框喳。
- sum 返回兩個(gè)或兩個(gè)以上數(shù)字/數(shù)字?jǐn)?shù)組中元素之和五垮。
- sumBy 根據(jù)函數(shù)映射每個(gè)元素杜秸,然后返回?cái)?shù)組的和撬碟。
- toDecimalMark 將數(shù)字轉(zhuǎn)化為千分位格式小作,將數(shù)字轉(zhuǎn)化為千分位格式,可以在數(shù)字前面加上符號稼钩。
TypeOf
- isNull 判斷類型Null坝撑。
- isUndefined 判斷類型Undefined。
- isBoolean 判斷類型Boolean扶认。
- isNumber 判斷類型Number殊橙。
- isString 判斷類型String膨蛮。
- isSymbol 判斷類型Symbol。
- isObject 判斷類型Object誉察。
- isRegExp 判斷類型RegExp持偏。
- isArray 判斷類型Array鸿秆。
- isFunction 判斷類型Function儒飒。
- getType 獲取類型桩了,全能型的typeOf。
url
- insertUrl 根據(jù)對象中的參數(shù)匹配插入到url中蕉扮。
- URLSearchParams url 序列化和反序列化喳钟。
- Url 返回網(wǎng)址的相關(guān)信息奔则,模擬了 瀏覽器的 new URL(urlString) 部分功能
validator
- graceChecker 表單驗(yàn)證易茬。
base64
- encode base64加密。
- decode base64解密范抓。
prototype
- match_all 擴(kuò)展 String的原型方法 es2019的matchAll(未兼容瀏覽器)匕垫。