为提高开发效率,提供了一些公用方法,方便快速开发,同时避免在项目中重复代码编写。umd格式
yarn add axzo-util
import { deepClone } from "axzo-util";
deepClone('copy')
主要包含一些数组常用的方法
名称 |
参数 |
返回值 |
arrayMaxMum |
array[] |
Number |
名称 |
参数 |
返回值 |
arrayMinMum |
array[] |
Number |
名称 |
参数 |
返回值 |
arraySum |
array[] |
Number |
4. 数组对象去重: arrayDeduplication
名称 |
参数 |
返回值 |
描述 |
arrayDeduplication |
array[],key: 去重关键字名称 |
array[] |
通过for循环+filter方式实现 |
5. 数组对象去重: uniqueDeduplication
名称 |
参数 |
返回值 |
描述 |
uniqueDeduplication |
array[],key: 去重关键字名称 |
array[] |
通过reduce方式实现 |
6. 树形结构遍历查找所有父级元素id: findPatentValue
名称 |
参数 |
返回值 |
描述 |
findPatentValue |
array[],targetId: 当前子节点ID,valueKey:可选(子节点目标标识名称。默认id),childrenKey:可选(子节点目标数组名称。默认children) |
array[] |
- |
名称 |
参数 |
返回值 |
描述 |
foreachTree |
array[],,childrenName:(子节点目标数组名称。默认children),callback: 回调Function |
- |
- |
8. 查找父级节点: TraceBackToParentNode
名称 |
参数 |
返回值 |
描述 |
TraceBackToParentNode |
pid: 当前子节点ID,data:array[]当前数组,rootId:根节点id,,parentKey:可选(父节点标识名称。默认parentId),idKey:可选(子节点标识名称,默认id),childrenName:可选(子节点数组名称,默认children) |
array[] |
- |
9. 将数组转化为树形结构: treeDataTranslateTree
名称 |
参数 |
返回值 |
描述 |
treeDataTranslateTree |
array[]:源数组,id:可选(子节点唯一标识key的名称,默认id),pid: 可选(父节点标识key的名称,默认parentId) |
array[] |
- |
对日期时间常用处理
1. 日期时间格式化: formatToDateTime
名称 |
参数 |
返回值 |
描述 |
formatToDateTime |
date: 需要格式化的日期时间,format:可选(参见dayjs格式化类型,默认:'YYYY-MM-DD HH:mm:ss') |
格式化后的日期时间 |
|
2. 返回指定时间戳之间的时间间隔: getTimeInterval
名称 |
参数 |
返回值 |
描述 |
getTimeInterval |
startTime: 结束时间的时间戳 |
返回时间字符串 example: 10分钟前 |
|
3. 返回指定日期的时间戳: getTimeTamp
名称 |
参数 |
返回值 |
描述 |
getTimeTamp |
time: 指定日期 |
时间戳 |
|
4. 按不同类型格式化日期: getFormatDate
名称 |
参数 |
返回值 |
描述 |
getFormatDate |
date: 指定日期,dateType:可选(需要返回类型,默认XXXX年MM月DD日) |
具体格式化日期 |
具体支持类型:yyyy-mm-dd,yyyy.mm.dd,yyyy-mm-dd MM:mm:ss,yyyy-mm-dd MM:mm,yyyy年mm月dd日 MM:mm:ss,yyyy年mm月dd日 MM:mm |
5. 返回本周第一天的时间: getWeekFirstDay
名称 |
参数 |
返回值 |
描述 |
getWeekFirstDay |
dateType:可选 对应的格式化格式 见getFormatDate方法,默认XXXX年MM月DD日 |
具体日期 |
|
6. 返回本周最后一天的时间: getWeekLastDay
名称 |
参数 |
返回值 |
描述 |
getWeekLastDay |
dateType:可选 对应的格式化格式 见getFormatDate方法,默认XXXX年MM月DD日 |
具体日期 |
|
7. 返回本月第一天的时间: getMonthFirstDay
名称 |
参数 |
返回值 |
描述 |
getMonthFirstDay |
dateType:可选 对应的格式化格式 见getFormatDate方法,默认XXXX年MM月DD日 |
具体日期 |
|
8. 返回本月最后一天的时间: getMonthLastDay
名称 |
参数 |
返回值 |
描述 |
getMonthLastDay |
dateType:可选 对应的格式化格式 见getFormatDate方法,默认XXXX年MM月DD日 |
具体日期 |
|
9. 获取指定月份第一天和最后一天的日期: getMonthFirstAndLastDate
名称 |
参数 |
返回值 |
描述 |
getMonthFirstAndLastDate |
timeStamp: 指定日期时间戳, dateType:可选 对应的格式化格式 见getFormatDate方法,默认XXXX年MM月DD日 |
object:{startTime,entTime} |
|
10. 获取日期范围类的每一天: getDayAll
名称 |
参数 |
返回值 |
描述 |
getDayAll |
starDay: 开始日期, endDay:结束日期 |
array[] |
|
11. 返回间隔时间的天数: getDateRange
名称 |
参数 |
返回值 |
描述 |
getDateRange |
intervalDays: 间隔天数,例如:30天, bolPastTime:判断在参数date之前,还是之后,默认false,dateNow:可选,日期时间,默认当前 |
array[] |
|
12. 返回指定时间之前一年的月份: getPassYearFormatDate
名称 |
参数 |
返回值 |
描述 |
getPassYearFormatDate |
time: 可选,默认当前时间 |
array[start,end] |
|
13. 当天之后的不可选,不包括当天,用于日期时间选择器: disabledDate
名称 |
参数 |
返回值 |
描述 |
disabledDate |
time: 日期 |
Boolean |
|
14. 当天之后的不可选,包括当天,用于日期时间选择器: disabledDateToday
名称 |
参数 |
返回值 |
描述 |
disabledDateToday |
time: 日期 |
Boolean |
|
15. 当天之前的时间不可选,包含当天,用于日期时间选择器: disabledBeforeDayDate
名称 |
参数 |
返回值 |
描述 |
disabledBeforeDayDate |
time: 日期 |
Boolean |
|
16. 当天之前的时间不可选,不包含当天,用于日期时间选择器: disabledBeforeToDate
名称 |
参数 |
返回值 |
描述 |
disabledBeforeToDate |
time: 日期 |
Boolean |
|
数据格式化
1. 金额格式化,三位加逗号分割:formatMoney
名称 |
参数 |
返回值 |
描述 |
formatMoney |
num: 金额 |
格式化后的值 |
num不存在时,返回- |
2. 账号脱敏:accountDesensitization
名称 |
参数 |
返回值 |
描述 |
accountDesensitization |
str: 需要脱敏的字符串,startLength:可选(开始脱敏的位置,默认4),endLength:可选(最后展示的位数,默认3) |
格式化后的值 |
|
3. 金额转化为大写:amountConversion
名称 |
参数 |
返回值 |
描述 |
amountConversion |
n: 需要转换的金额 |
转换后的值 |
|
4. 截取字符串并加省略号:truncateStringAddEllipsis
名称 |
参数 |
返回值 |
描述 |
truncateStringAddEllipsis |
str: 需要截取的字符串,length:截取长度。 |
转换后的值 |
|
名称 |
参数 |
返回值 |
描述 |
turnCase |
str: 待转换的字符串,type:类型(见描述)。 |
转换后的值 |
1-全大写 2-全小写 3-首字母大写 其他-不转换 |
6. 数字超过规定大小加上加号“+”:outOfNum
名称 |
参数 |
返回值 |
描述 |
outOfNum |
val: 输入的数字,maxNum:数字规定界限。 |
转换后的值 |
如数字超过99显示99+ |
7. 根据阿拉伯数字,转中文大写数字:upDigit
名称 |
参数 |
返回值 |
描述 |
upDigit |
number: 需要转换的数字(默认0) |
转换后的值 |
|
名称 |
参数 |
返回值 |
描述 |
trim |
str: 原字符串,type:去除空格的位置 |
处理之后的字符串 |
type 1-所有空格 2-前后空格 3-前空格 4-后空格 |
公共分类
名称 |
参数 |
返回值 |
描述 |
getSuffixName |
fileName: 传入文件名称 |
文件后缀名 |
|
名称 |
参数 |
返回值 |
描述 |
deepClone |
values: 深拷贝的值 |
拷贝之后的值 |
支持:数组、对象、日期、基本类型 |
3. 乘法函数 防止精度丢失:multiplication
名称 |
参数 |
返回值 |
描述 |
multiplication |
num1: 第一个数值,num2:第二个数值 |
结果 |
|
名称 |
参数 |
返回值 |
描述 |
division |
num1: 第一个数值,num2:第二个数值 |
结果 |
|
名称 |
参数 |
返回值 |
描述 |
addition |
num1: 第一个数值,num2:第二个数值 |
结果 |
|
名称 |
参数 |
返回值 |
描述 |
subtraction |
num1: 第一个数值,num2:第二个数值 |
结果 |
|
常用类型
名称 |
参数 |
返回值 |
描述 |
typeOf |
target: 数据值 |
数值对应的类型 |
|
名称 |
参数 |
返回值 |
描述 |
isObject |
target: 数据值 |
Boolean |
|
名称 |
参数 |
返回值 |
描述 |
isObjectLike |
target: 数据值 |
Boolean |
|
名称 |
参数 |
返回值 |
描述 |
isArray |
target: 数据值 |
Boolean |
|
5. 判断是否是类数组对象:isArrayLike
名称 |
参数 |
返回值 |
描述 |
isArrayLike |
target: 数据值 |
Boolean |
|
名称 |
参数 |
返回值 |
描述 |
isString |
target: 数据值 |
Boolean |
|
名称 |
参数 |
返回值 |
描述 |
isNumber |
target: 数据值 |
Boolean |
|
8. 判断是否是Function:isFunction
名称 |
参数 |
返回值 |
描述 |
isFunction |
target: 数据值 |
Boolean |
|
封装本地存储,localStorage,sessionStorage,通过传入配置项来判断使用哪种存储方式,如果不传入配置项,则默认使用localStorage,过期时间7天,前缀axzo
import {useStorage} from 'axzo-utils'
const {setStorage} = useStorage({
type: 'localStorage', // 存储类型
prefix: 'axzo', // 前缀
expire: 7 * 24 * 60 * 60 // 过期时间,单位秒
})
1. 判断是否支持本地存储:isSupStorage
名称 |
参数 |
返回值 |
描述 |
isSupStorage |
|
Boolean |
|
名称 |
参数 |
返回值 |
描述 |
setStorage |
三个参数:存储的key,存储的value,过期时间expire(可选) |
|
|
名称 |
参数 |
返回值 |
描述 |
getStorage |
存储的key |
当前key对应的数据 |
|
4. 是否存在storage:hasStorage
名称 |
参数 |
返回值 |
描述 |
hasStorage |
存储的key |
boolean |
|
5. 获取存储所有的key:getStorageKeys
名称 |
参数 |
返回值 |
描述 |
getStorageKeys |
|
array |
|
6. 根据索引获取key:getStorageForIndex
名称 |
参数 |
返回值 |
描述 |
getStorageForIndex |
索引下标index |
index对应的数据 |
|
7. 获取Storage长度:getStorageLength
名称 |
参数 |
返回值 |
描述 |
getStorageLength |
|
number |
|
8. 获取全部storage:getStorageAll
名称 |
参数 |
返回值 |
描述 |
getStorageAll |
|
array |
当前所有的本地存储 |
名称 |
参数 |
返回值 |
描述 |
removeStorage |
需要移除的本地存储的key |
|
|
名称 |
参数 |
返回值 |
描述 |
clearStorage |
|
|
清空所有的本地存储 |
名称 |
参数 |
返回值 |
描述 |
isJson |
存储的value值 |
Boolean |
判断当前的值是否可用JSON.parse解析 |
12. 名称前自动添加前缀:autoAddPrefix
名称 |
参数 |
返回值 |
描述 |
autoAddPrefix |
需要添加前缀的key |
已经添加前缀的key |
|
13. 移除已添加的前缀:autoRemovePrefix
名称 |
参数 |
返回值 |
描述 |
autoRemovePrefix |
需要移除前缀的key |
已经已经前缀的key |
|