@pmun/utils v0.3.10
Type Aliases
| Type Alias | Description |
|---|---|
| DateLike | 表示日期的各种类型,可以是日期对象、日期字符串或时间戳 |
Array
| Function | Description |
|---|---|
| appendUniversalOption | 在选项数组前添加一个"全部"选项 |
| arrayReplaceNBSP | 替换数组数据中指定字段的 为不换行空格 |
| arrayToObject | 数组转为对象 |
| chunk | 将数组分成指定大小的块 |
| difference | 返回第一个数组中不存在于其他数组的元素 |
| first | 获取数组中的第一个元素 |
| flatten | 将嵌套数组扁平化一层 |
| flattenDeep | 递归扁平化嵌套数组至完全扁平 |
| flattenDepth | 递归扁平化数组至指定深度 |
| groupBy | 根据条件对数组中的元素进行分组 |
| intersection | 返回所有数组的交集(所有数组中都存在的元素) |
| isEqual | 比较两个数组是否相等(元素顺序和值都相同) |
| last | 获取数组中的最后一个元素 |
| remove | 从数组中移除指定的项 |
| renameTreeNodes | 递归重命名树形结构节点的属性。 |
| sample | 从数组中随机选择一个元素 |
| shuffle | 随机打乱数组元素顺序 |
| sortBy | 根据迭代函数返回的值进行排序 |
| transformTree | 递归转换树形结构的节点,支持重命名、新增、过滤属性。 |
| union | 返回所有数组的并集(去重后的所有元素) |
| uniqBy | 根据迭代函数返回的值进行数组去重 |
| unique | 数组去重,移除数组中的重复元素 |
Date
| Function | Description |
|---|---|
| add | 向日期添加指定时间 |
| addDays | 向日期添加指定天数 |
| addMonths | 向日期添加指定月数 |
| addYears | 向日期添加指定年数 |
| convertToDayjsParam | 转换为 dayjs 可接收的参数格式 |
| createDate | 创建 dayjs 对象 |
| diff | 计算两个日期之间的差异 |
| endOf | 获取日期的结束时间 |
| formatChatTime | 格式化日期为聊天列表时间格式(类似微信聊天列表) |
| formatDate | 格式化日期为指定格式的字符串 |
| formatDuration | 格式化时间戳为时长字符串 |
| formatFullTime | 将日期格式化为完整的时间字符串(YYYY-MM-DD HH:mm:ss) |
| formatHumanReadable | 格式化日期为人类友好的格式 |
| fromNow | 获取相对时间描述 |
| getDayOfWeek | 获取指定日期是一周中的第几天 |
| getDaysInMonth | 获取指定月份的天数 |
| isDateInRange | 检查日期是否在指定范围内 |
| isMillisecondTimestamp | 判断时间戳是否为毫秒级时间戳 |
| now | 获取当前日期时间的时间戳 |
| parseDate | 解析日期字符串为日期对象 |
| startOf | 获取日期的开始时间 |
Is
| Function | Description |
|---|---|
| isArray | 检查值是否为数组类型 |
| isBoolean | 检查值是否为布尔类型 |
| isClass | 检查值是否为类构造函数 |
| isDate | 检查值是否为日期类型 |
| isEmpty | 检查值是否为空(null、undefined、空字符串、空数组或空对象) |
| isEmptyObject | 检查对象是否为空对象(没有自身可枚举属性) |
| isFunction | 检查值是否为函数类型 |
| isMap | 检查值是否为 Map |
| isMobilePhone | 检查值是否为有效的手机号码 |
| isNaN | 检查值是否为 NaN |
| isNull | 检查值是否为 null |
| isNullOrUndefined | 检查值是否为 null 或 undefined |
| isNumber | 检查值是否为数字类型 |
| isObject | 检查值是否为对象类型(不包括 null) |
| isPlainObject | 检查值是否为普通对象(由 Object 构造函数创建或对象字面量) |
| isPrimitive | 检查值是否为原始类型(string、number、boolean、symbol、bigint、null、undefined) |
| isPromise | 检查值是否为 Promise |
| isRegExp | 检查值是否为正则表达式 |
| isSet | 检查值是否为 Set |
| isString | 检查值是否为字符串类型 |
| isSymbol | 检查值是否为 Symbol |
| isUndefined | 检查值是否为 undefined |
Number
| Function | Description |
|---|---|
| clamp | 确保数字在指定范围内 |
| formatCurrency | 将数字格式化为货币字符串 |
| formatNumberWithTenThousand | 将数值转换为带"万"单位的字符串 |
| formatThousands | 将数字格式化为带千位分隔符的字符串 |
| isEven | 检查一个数字是否为偶数 |
| isOdd | 检查一个数字是否为奇数 |
| percentage | 计算百分比值 |
| randomInt | 生成指定范围内的随机整数(包含边界值) |
| round | 将数字四舍五入到指定小数位 |
Object
| Function | Description |
|---|---|
| deepClone | 深拷贝对象,支持基本类型、数组、对象、日期和正则表达式 |
| deepMerge | 深度合并多个对象,会递归合并嵌套对象 |
| filterObjectByKeys | 根据传入的键数组和键名映射对象过滤并重命名对象,返回一个新对象 |
| get | 从对象中获取指定路径的值,支持点分隔的嵌套路径 |
| hasOwnProp | 检查对象是否具有指定的自有属性。 |
| invert | 反转对象的键值对,值变成键,键变成值 |
| mapKeys | 创建一个新对象,通过函数转换每个键 |
| mapValues | 创建一个新对象,通过函数转换每个值 |
| merge | 合并多个对象,后面的对象的属性会覆盖前面的 |
| objectToQueryString | 将对象转换为 URL 查询字符串 |
| omit | 从对象中排除指定的属性,创建一个新对象 |
| pick | 从对象中选择指定的属性,创建一个新对象 |
Promise
| Function | Description |
|---|---|
| debounce | 创建一个防抖函数(异步版本) |
| delay | 延迟指定的毫秒数 |
| parallel | 并发执行多个 Promise,并限制同时执行的数量 |
| retry | 重试失败的 Promise |
| sequential | 顺序执行多个 Promise(一个接一个) |
| throttle | 创建一个节流函数(异步版本) |
| timeout | 带超时控制的 Promise |
String
| Function | Description |
|---|---|
| camelToKebab | 将驼峰命名转换为短横线命名(kebab-case) |
| capitalize | 将字符串首字母转为大写 |
| ensureRpxUnit | 确保值具有 rpx 单位,主要用于小程序/uni-app 样式处理 |
| escapeHtml | 将字符串中的 HTML 特殊字符转义,防止 XSS 攻击 |
| isEmptyString | 检查字符串是否为空或只包含空白字符 |
| isValidEmail | 检查字符串是否为有效的电子邮件地址 |
| isValidUrl | 检查字符串是否为有效的 URL |
| kebabToCamel | 将短横线命名(kebab-case)转换为驼峰命名(camelCase) |
| parseJsonStr | 解析JSON字符串,处理异常情况 |
| pascalCase | 将字符串转换为帕斯卡命名(PascalCase) |
| randomString | 生成指定长度的随机字符串 |
| replaceNBSP | 替换字符串中的 为不换行空格 |
| snakeCase | 将字符串转换为蛇形命名(snake_case) |
| template | 简单的模板字符串替换 |
| truncate | 截取字符串并添加省略号 |
| words | 将字符串分割成单词数组 |
Url
| Function | Description |
|---|---|
| 将对象转换为URL查询字符串 |