axzo-util
TypeScript icon, indicating that this package has built-in type declarations

1.3.2-beta • Public • Published

axzo-util 通用库

为提高开发效率,提供了一些公用方法,方便快速开发,同时避免在项目中重复代码编写。umd格式

一、使用方式

  • 1、通过命令行引入
yarn add axzo-util
  • 2、使用方法
import { deepClone } from "axzo-util";
deepClone('copy')

二、具体方法

1、数组

主要包含一些数组常用的方法

1. 数组最大值: arrayMaxMum
名称 参数 返回值
arrayMaxMum array[] Number
2. 数组最小值: arrayMinMum
名称 参数 返回值
arrayMinMum array[] Number
3. 数组求和: arraySum
名称 参数 返回值
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[] -
7. 遍历树形结构: foreachTree
名称 参数 返回值 描述
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[] -

2、日期、时间

对日期时间常用处理

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

3、格式化

数据格式化

1. 金额格式化,三位加逗号分割:formatMoney
名称 参数 返回值 描述
formatMoney num: 金额 格式化后的值 num不存在时,返回-
2. 账号脱敏:accountDesensitization
名称 参数 返回值 描述
accountDesensitization str: 需要脱敏的字符串,startLength:可选(开始脱敏的位置,默认4),endLength:可选(最后展示的位数,默认3) 格式化后的值
3. 金额转化为大写:amountConversion
名称 参数 返回值 描述
amountConversion n: 需要转换的金额 转换后的值
4. 截取字符串并加省略号:truncateStringAddEllipsis
名称 参数 返回值 描述
truncateStringAddEllipsis str: 需要截取的字符串,length:截取长度。 转换后的值
5. 大小写转换:turnCase
名称 参数 返回值 描述
turnCase str: 待转换的字符串,type:类型(见描述)。 转换后的值 1-全大写 2-全小写 3-首字母大写 其他-不转换
6. 数字超过规定大小加上加号“+”:outOfNum
名称 参数 返回值 描述
outOfNum val: 输入的数字,maxNum:数字规定界限。 转换后的值 如数字超过99显示99+
7. 根据阿拉伯数字,转中文大写数字:upDigit
名称 参数 返回值 描述
upDigit number: 需要转换的数字(默认0) 转换后的值
8. 去除空格:trim
名称 参数 返回值 描述
trim str: 原字符串,type:去除空格的位置 处理之后的字符串 type 1-所有空格 2-前后空格 3-前空格 4-后空格

4、common,公共分类

公共分类

1. 返回文件后缀名:getSuffixName
名称 参数 返回值 描述
getSuffixName fileName: 传入文件名称 文件后缀名
2. 深拷贝,支持常见类型:deepClone
名称 参数 返回值 描述
deepClone values: 深拷贝的值 拷贝之后的值 支持:数组、对象、日期、基本类型
3. 乘法函数 防止精度丢失:multiplication
名称 参数 返回值 描述
multiplication num1: 第一个数值,num2:第二个数值 结果
4. 除法 防止精度丢失:division
名称 参数 返回值 描述
division num1: 第一个数值,num2:第二个数值 结果
5. 加法 防止精度丢失:addition
名称 参数 返回值 描述
addition num1: 第一个数值,num2:第二个数值 结果
6. 减法 防止精度丢失:subtraction
名称 参数 返回值 描述
subtraction num1: 第一个数值,num2:第二个数值 结果

5、常用类型判断

常用类型

1. 获取数据类型:typeOf
名称 参数 返回值 描述
typeOf target: 数据值 数值对应的类型
2. 判断是否是object:isObject
名称 参数 返回值 描述
isObject target: 数据值 Boolean
3. 判断是否是类对象:isObjectLike
名称 参数 返回值 描述
isObjectLike target: 数据值 Boolean
4. 判断是否是数组:isArray
名称 参数 返回值 描述
isArray target: 数据值 Boolean
5. 判断是否是类数组对象:isArrayLike
名称 参数 返回值 描述
isArrayLike target: 数据值 Boolean
6. 判断是否是字符串:isString
名称 参数 返回值 描述
isString target: 数据值 Boolean
7. 判断是否是Number:isNumber
名称 参数 返回值 描述
isNumber target: 数据值 Boolean
8. 判断是否是Function:isFunction
名称 参数 返回值 描述
isFunction target: 数据值 Boolean

6、本地存储

封装本地存储,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
2. 设置本地存储:setStorage
名称 参数 返回值 描述
setStorage 三个参数:存储的key,存储的value,过期时间expire(可选)
3. 获取本地存储:getStorage
名称 参数 返回值 描述
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 当前所有的本地存储
9. 移除本地存储:removeStorage
名称 参数 返回值 描述
removeStorage 需要移除的本地存储的key
10. 清空本地存储:clearStorage
名称 参数 返回值 描述
clearStorage 清空所有的本地存储
11. 判断是否可用:JSON.parse
名称 参数 返回值 描述
isJson 存储的value值 Boolean 判断当前的值是否可用JSON.parse解析
12. 名称前自动添加前缀:autoAddPrefix
名称 参数 返回值 描述
autoAddPrefix 需要添加前缀的key 已经添加前缀的key
13. 移除已添加的前缀:autoRemovePrefix
名称 参数 返回值 描述
autoRemovePrefix 需要移除前缀的key 已经已经前缀的key

持续更新中。。。。

Dependents (0)

Package Sidebar

Install

npm i axzo-util

Weekly Downloads

4

Version

1.3.2-beta

License

ISC

Unpacked Size

171 kB

Total Files

20

Last publish

Collaborators

  • axzo-plus