1.2.13 • Published 12 months ago
aus-tools v1.2.13
aus-tools
- 一个JavaScript工具库。提供了许多常用的工具函数和类,以便开发人员可以更快速地完成任务
安装
pnpm install aus-tools
使用
import _ from 'aus-tools';
_.getFingerprint()
or
import { getFingerprint } from 'aus-tools';
getFingerprint()
功能列表
功能名称 | 调用方式 | 浏览器环境 | Node环境 | 备注 |
---|---|---|---|---|
获取浏览器指纹 | getFingerprint() | ✅ | ❌ | |
在当前页面下载文件 | downloadUrlFile(url: string) | ✅ | ❌ | |
下载blob格式文件 | downloadBlobFile(blob: Blob, fileName: string) | ✅ | ❌ | |
打开新页面 | openNewPage(url: string) | ✅ | ❌ | |
自动调整元素的屏幕适配比例 | autoScreenRatio({ dWidth: number; dHeight: number; elementId: string; }) | ✅ | ❌ | |
复制文本 | copyText(text: string) | ✅ | ❌ | |
睡眠函数 | sleep(ms: number) | ✅ | ✅ | |
返回只执行一次的函数 | useOnce(callback: Function) | ✅ | ✅ | |
获取随机生成的字符串 | getRandomValue(length: number, prefix?: string) | ✅ | ✅ |
安全存储 webStorage二开 仅支持现代浏览器环境
根据浏览器指纹进行SM4加密 无法解密会自动删除键值 所以无法使用别的电脑加密的数据
import { safeLocalStorage, safeStorage } from 'aus-tools';
safeLocalStorage.getItem('key')
函数名称 | 调用方式 | 备注 |
---|---|---|
获取存储内容 | getItem(key: string, def: any = null) | def为取值失败时的默认返回值 |
设置存储内容 | setItem(key: string, value: any, expires?: number) | expires为过期时间戳,单位为秒 |
删除存储内容 | remove(key: string) | |
清空存储内容 | clear() |
格式化相关
功能名称 | 调用方式 | 浏览器环境 | Node环境 | 备注 | |
---|---|---|---|---|---|
格式化日期 | timeFormater(date?: Date | number | string, formater: string): string | ✅ | ✅ | 默认格式为:YYYY-MM-DD HH:mm:ss | |
格式化文件大小 | sizeFormat(size: number| string, unit: sizeUnit = 'B'): string | ✅ | ✅ | ||
获取url参数 | getUrlParams<T = Record<string, string>>(url?: string):T | ✅ | ✅❌ | node环境必须传入参数 可以通过泛型控制返回类型 | |
解析Base64 | parseBase64(base64: string) | ✅ | ✅ | 提取其中的媒体类型(mime type)、扩展名和数据部分 | |
脱敏手机号 | desensitizePhone(str: string): string | ✅ | ✅ | 130****0000 | |
脱敏邮箱 | desensitizeEmail(str: string): string | ✅ | ✅ | abc123@qq.com -> abc***@qq.com | |
脱敏字符串 | desensitizeStr(str: string): string | ✅ | ✅ | 保留第一位和最后一位 其余脱敏 |
Is相关
功能名称 | 调用方式 | 浏览器环境 | Node环境 | 备注 | ||||||
---|---|---|---|---|---|---|---|---|---|---|
是否是浏览器环境 | isInBrowser():boolean | ✅ | ✅ | |||||||
是否是Node环境 | isInNode():boolean | ✅ | ✅ | |||||||
是否是字符串 | isString(str: unknown):boolean | ✅ | ✅ | |||||||
是否是数字 | isNumber(num: unknown):boolean | ✅ | ✅ | |||||||
是否是布尔值 | isBoolean(bool: unknown):boolean | ✅ | ✅ | |||||||
是否是NaN | isNaN(val: unknown):boolean | ✅ | ✅ | |||||||
非null非undefined | isDefined(val: unknown):boolean | ✅ | ✅ | 用于判断值存在 允许为0或空串 | ||||||
是否是数组 | isArray(val: unknown):boolean | ✅ | ✅ | |||||||
是否是空数组 | isEmptyArray(arr: T[]):boolean | ✅ | ✅ | |||||||
是否是对象 | isObject(fn: unknown) | ✅ | ✅ | |||||||
是否是空对象 | isEmptyObject(obj: Record<string, unknown>):boolean | ✅ | ✅ | |||||||
是否是邮箱 | isEmail(val: string):boolean | ✅ | ✅ | 判断正则:/^\w+.-+@\dA-Za-z-+.\d.A-Za-z-+$/ | ||||||
是否是手机号 | isPhone(val: string):boolean | ✅ | ✅ | 判断正则:/^1(30-9 | 401456879 | 50-35-9 | 62567 | 70-8 | 80-9 | 90-35-9)\d{8}$/ |
是否是URL | isUrl(val: string):boolean | ✅ | ✅ | |||||||
是否是Date | isDate(val: unknown):boolean | ✅ | ✅ | |||||||
返回值类型 | getType(value: unknown): Type | ✅ | ✅ | 无法判断返回“Object” |
优化相关
功能名称 | 调用方式 | 浏览器环境 | Node环境 | 备注 |
---|---|---|---|---|
节流函数 | throttle(fn: Function, delay: number = 200, leading: boolean, trailing: boolean) | ✅ | ✅ | |
防抖函数 | debounce(fn: Function, delay: number = 200, immediate: boolean) | ✅ | ✅ |
1.2.8
1 year ago
1.2.7
1 year ago
1.2.6
1 year ago
1.2.5
1 year ago
1.2.4
1 year ago
1.2.3
1 year ago
1.2.9
1 year ago
1.2.12
1 year ago
1.2.13
12 months ago
1.2.10
1 year ago
1.2.11
1 year ago
1.2.0
1 year ago
1.2.2
1 year ago
1.2.1
1 year ago
1.1.4
1 year ago
1.1.3
1 year ago
1.1.2
1 year ago
1.1.1
1 year ago
1.1.0
1 year ago
1.0.1
1 year ago
1.0.0
1 year ago