utils package
@zero-dim/utils - 前端通用工具函数库
Remarks
这是一个全面的前端工具函数库,提供了丰富的工具函数集合,包括:
- 进度条控制 nProgress - 提供页面加载进度条功能 - 树结构操作 treeToArray() - 树形结构与数组的相互转换 - 类型判断 - 全面的数据类型判断工具 - 唯一标识 uniqueId() - 生成 UUID 等唯一标识 - 对象操作 - 深拷贝、对象合并等 - 表单处理 - 表单数据的处理工具 - 函数工具 - 函数字符串转换等
主要特点: - 完全使用 TypeScript 编写,提供完整的类型定义 - 全面的单元测试覆盖 - 零依赖,仅依赖核心的工具库 - 支持 Tree Shaking - 支持 ESM 和 CommonJS 两种模块规范
安装使用:
bash
npm install @zero-dim/utils
# 或者
yarn add @zero-dim/utils
基础使用:
typescript
import { isObject, deepCopy, uniqueId } from '@zero-dim/utils'
// 类型判断
isObject({}) // true
// 对象深拷贝
const copy = deepCopy({ a: 1, b: { c: 2 } })
// 生成唯一ID
const id = uniqueId()
Functions
Function | Description |
---|---|
访问或设置嵌套对象的值 | |
递归将对象中的函数转换为字符串 | |
递归将对象中的函数字符串转换为可执行函数 | |
将字符串转换为可执行函数 | |
创建值的深拷贝 | |
深度扩展一个对象 | |
使用多个源对象深度扩展一个对象 | |
根据点分隔的路径字符串生成嵌套对象 | |
根据路径获取对象中的值 | |
判断对象是否包含指定的自有属性 | |
判断值是否为指定的类型 | |
判断值是否为数组类型 | |
判断值是否为布尔类型 | |
判断值是否为空 | |
判断字符串是否为外部链接(http:,https:,mailto:,tel:开头) | |
判断值是否为函数类型 | |
判断字符串是否为有效的JSON格式 | |
判断值是否为数字类型 | |
判断值是否为普通对象(非null的object类型) | |
判断值是否为字符串类型 | |
判断值是否为undefined或null | |
根据字符串路径设置嵌套对象的值 | |
给目标对象的字段设置值 | |
根据路径设置对象中的值 | |
将树形结构数据转换为扁平数组 | |
生成通用唯一识别码(UUID) |
Variables
Variable | Description |
---|---|
导出配置好的进度条实例 提供以下主要方法: - start(): 开始进度 - done(): 结束进度 - set(n): 设置指定进度,n介于0-1 - inc(): 稍微增加一点进度 - remove(): 移除进度条 |