minke-tooljs
v1.0.14
Published
TypeScript + Vite
Readme
minke-toolj
TypeScript + Vite
更新日志
[TOC]
1.0.14
- 优化构建脚本,升级依赖,完善类型声明发布。
- utils增加密码生成方法
1.0.13
- 修复部分类型定义错误,增强 TypeScript 类型提示。
- 优化部分工具函数参数类型声明。
1.0.12
- ✨增加操作行为监控类
OperationalBehaviorMonitoring,支持页面点击、鼠标移动、滚动、停留、关闭、可见性变化、元素曝光等交互行为监听与回调。
1.0.11
- 优化工具库体积及按需加载。
1.0.10
- ✨增加 element exposure(元素曝光)能力至行为监控工具类。
1.0.9
- ✨格式化 README 使用 TOC 索引,规范日志记录。
1.0.8
- ✨keyboardListener 键盘事件工具增加组合键支持,完善 types 标注。
- 优化 KeyboardListener 的事件回调与当前按键识别。
1.0.7
- 增加跨会话清除sessionStorage类
1.0.6
- 优化键盘事件监听器调用顺序
1.0.5
- SMTool sm加密工具类,目前只支持sm4
- KeyboardListener 键盘事件监听器
1.0.4
- 数据校验中邮箱正则改为/^\w+([-+.]\w+)@\w+([-.]\w+).\w+([-.]\w+)*$/
- formatFileSize 增加更大的单位'PB', 'EB', 'ZB', 'YB';增加unitIndex条件判断,防止越界
0.3.9
- ✨增加base64转换工具类。
- encode 将明文数据编码为base64
- decode 将base64解码为指定类型
- isBase64Valid 判断是否为有效的base64编码
- base64ToString 将base64解码为明文字符串
- stringToBase64 将明文字符串编码为base64
- base64ToBlob 将base64解码为Blob对象
- blobToBase64 将Blob对象编码为base64
- base64ToFile 将base64解码为File对象
- fileToBase64 将File对象编码为base64
- base64ToArrayBuffer 将base64解码为ArrayBuffer对象
- arrayBufferToBase64 将ArrayBuffer对象编码为base64
- base64ToHEX 将base64解码为HEX字符串
- HEXToBase64 将HEX字符串编码为base64
0.3.8
- ✨filter.dicFilter 取消Promise返回,改为直接return结果(Promise在一些场景下会报错)。
0.3.5
- ✨compareTime 对比开始时间和结束时间,并判断结束时间和开始时间是否满足自定义规则。
- ✨openWindow 创建a标签并模拟点击,进行页面跳转。
0.3.1
- ✨debounce 防抖函数,用于限制一个函数在短时间内连续触发时只执行一次,常用于输入框搜索功能等场景。
- ✨throttle 节流函数,用于限制一个函数在一定时间内只执行一次,常用于滚动加载等场景。
- ✨deepClone 深拷贝一个对象或数组,避免引用类型的数据共享问题。
- ✨formatFileSize 将文件大小转换为可读性更好的格式,如将字节数转换为 KB、MB、GB 等单位。
- ✨generateRandomNumber 生成指定范围内的随机数,如生成指定长度的随机验证码。
- ✨truncateText 截断长文本并添加省略号,用于处理过长的标题或描述。
- ✨smoothScrollToTop 平滑滚动到页面顶部
- ✨toCamelCase 将字符串转换为驼峰命名法。
- ✨toTitleCase 将字符串转换为标题格式,即每个单词首字母大写。
- ✨flatten 将多维数组扁平化为一维数组。
- ✨unique 去除数组中的重复元素。
- ✨shuffle 随机打乱数组的顺序。
- ✨formatCurrency 格式化货币金额,添加千位分隔符和货币符号。
- ✨smoothScrollTo 平滑滚动到指定元素位置。
- ✨getScrollPosition 获取页面的滚动位置。
- ✨isInViewport 检测元素是否在可视区域内。
- ✨downloadFile 通过 JavaScript 下载文件。
- ✨isLeapYear 检查年份是否为闰年。
- ✨getWeekNumber 获取给定日期的周数。
- ✨getDaysInYear 获取给定日期的年份中的天数。
- ✨getRandomColor 获取随机的颜色值。
export {
// utils
/** 删除前后空格 */
trim,
/** 判断是否为空 */
isEmpty,
/** 是否为空字符串,全空格也是空字符串 */
isBlank,
/** 判断是否是ie */
isIE,
/** 是否为url地址 */
isURL,
/** 处理两数运算丢失精度问题 */
numOperation,
/** 复制内容 */
copyValue,
/** 监听界面上下滚动,并在一定延迟之后执行相关操作 */
handleScrollHeader,
/** 检验密码强度 */
scorePassword,
/** 获取随机字符串 */
getUUID,
/** 根据传入的文件后缀获取对应的contentType */
getFileContentType,
/** 获取两个数组的并集(只支持一维数组) */
getArrayUnionSet,
/** 获取两个数组的差集(只支持一维数组) */
getArrayDifferenceSet,
/** 获取地址栏携带的参数 */
getUrlParam,
/** 禁止通过 ctrl + +/- 和 ctrl + 滚轮 对页面进行缩放 */
preventZoom,
/** 获取浏览器内核类型 */
getBrowserType,
/** 处理树形数据 */
handleTreeData,
/** 防抖 */
debounce,
/** 节流 */
throttle,
/** 深拷贝 */
deepClone,
/** 格式化文件大小 */
formatFileSize,
/** 生成随机数 */
generateRandomNumber,
/** 截断字符串 */
truncateText,
/** 平滑滚动到顶部 */
smoothScrollToTop,
/** 转换为驼峰命名 */
toCamelCase,
/** 转换为标题命名 */
toTitleCase,
/** 扁平化数组 */
flatten,
/** 数组去重 */
unique,
/** 打乱数组 */
shuffle,
/** 格式化货币 */
formatCurrency,
/** 平滑滚动到指定元素 */
smoothScrollTo,
/** 获取滚动条位置 */
getScrollPosition,
/** 判断元素是否在视口中 */
isInViewport,
/** 下载文件 */
downloadFile,
/** 判断是否为闰年 */
isLeapYear,
/** 获取周数 */
getWeekNumber,
/** 获取年份天数 */
getDaysInYear,
/** 获取随机颜色 */
getRandomColor,
/** 获取身份证信息 */
getIDCardInfo,
/** 比较时间 */
compareTime,
/** 打开新窗口 */
openWindow,
/** 获取年份 */
getToDateYear,
// filter
filter,
// base64转换
Base64,
// validator
Validator,
// sm4加密
SMTool,
// 键盘事件监听
KeyboardListener,
// 跨会话清除sessionStorage
ClearOtherTagSession,
// IndexDB
openDB,
addData,
getDataByKey,
getDataByCursor,
getDataByIndex,
cursorGetDataByIndex,
updateDB,
deleteDB,
deleteDBAll,
closeDB,
// Excel
ExportExcel
}eg:
import { trim, filter } from 'minke-tooljs'
...
console.log(trim(' qdw qdq qdw '))
console.log(filter.dateTimeFilter(new Date()))
console.log(filter.codeFilter('123456789', 2, 4))