@kaishi/shared
v0.1.2
Published
通用工具函数集合,提供常用的辅助函数。
Readme
@kaishi/utils
通用工具函数集合,提供常用的辅助函数。
安装
pnpm add @kaishi/utils使用
import { sleep, formatDate, deepClone } from '@kaishi/utils';
// 使用延迟函数
async function example() {
console.log('开始');
await sleep(1000); // 延迟1秒
console.log('1秒后');
}
// 格式化日期
const now = new Date();
const formattedDate = formatDate(now, 'YYYY-MM-DD HH:mm:ss');
console.log(formattedDate); // 例如: 2023-05-20 14:30:45
// 深拷贝对象
const obj = { a: 1, b: { c: 2 } };
const clonedObj = deepClone(obj);
clonedObj.b.c = 3;
console.log(obj.b.c); // 仍然是 2API
sleep(ms: number): Promise<void>
创建一个延迟指定毫秒数的Promise。
formatDate(date: Date, format?: string): string
将Date对象格式化为指定格式的字符串。默认格式为'YYYY-MM-DD'。
deepClone<T>(obj: T): T
深拷贝一个对象,支持嵌套对象、数组和日期。
debounce<T>(fn: T, delay: number): (...args: Parameters<T>) => void
创建一个防抖函数,延迟调用直到停止触发指定时间后。
throttle<T>(fn: T, limit: number): (...args: Parameters<T>) => void
创建一个节流函数,限制函数在指定时间内只能调用一次。
randomInt(min: number, max: number): number
生成指定范围内的随机整数。
isEmptyObject(obj: Record<string, any>): boolean
检查对象是否为空。
objectToQueryString(params: Record<string, any>): string
将对象转换为URL查询字符串。
parseQueryString(queryString: string): Record<string, string>
将URL查询字符串解析为对象。
许可证
MIT