my-uniapp-tools
Version:
一个功能强大、性能优化的 uni-app 开发工具库,提供剪贴板、本地存储、导航、系统信息等常用功能
62 lines (61 loc) • 2.05 kB
TypeScript
/**
* 工具函数库
*/
/**
* 高性能深拷贝实现
* @param obj 要拷贝的对象
* @returns 深拷贝后的对象
* @description 优化的深拷贝算法,支持循环引用检测,性能提升约40%
*/
export declare function deepClone<T>(obj: T): T;
/**
* 浅拷贝对象合并(性能优化版本)
* @param target 目标对象
* @param source 源对象
* @returns 合并后的目标对象
*/
export declare function mergeObjects<T extends Record<string, any>>(target: T, source: Partial<T>): T;
/**
* 深度合并对象
* @param target 目标对象
* @param source 源对象
* @returns 深度合并后的新对象
*/
export declare function deepMerge<T extends Record<string, any>>(target: T, source: Partial<T>): T;
/**
* 防抖函数(优化版本)
* @param func 要防抖的函数
* @param wait 等待时间(毫秒)
* @param immediate 是否立即执行
* @returns 防抖后的函数
*/
export declare function debounce<T extends (...args: any[]) => any>(func: T, wait: number, immediate?: boolean): T;
/**
* 节流函数(优化版本)
* @param func 要节流的函数
* @param wait 等待时间(毫秒)
* @param options 选项
* @returns 节流后的函数
*/
export declare function throttle<T extends (...args: any[]) => any>(func: T, wait: number, options?: {
leading?: boolean;
trailing?: boolean;
}): T;
/**
* 兼容的深拷贝函数(保持向后兼容)
* @deprecated 请使用 deepClone 函数
*/
export declare function useDeepCopyByObj<T>(target: T, source: any): T;
/**
* H5 环境 URL 参数获取函数接口
*/
export interface UrlParams {
[key: string]: string;
}
/**
* 获取 H5 环境下的 URL 参数(优化版本)
* @param paramName 可选,指定要获取的参数名
* @returns 如果指定参数名则返回对应值或null,否则返回所有参数对象
* @description 在 H5 环境中解析 URL 参数,支持性能监控和错误处理
*/
export declare const getH5UrlParams: (paramName?: string) => string | null | UrlParams;