UNPKG

arayts

Version:

让 TypeScript 开发如丝般顺滑。ArayTS 提供了一套高效、优雅的算法工具集,包含常用的数据结构与算法实现,帮助开发者轻松构建可靠的应用程序。

66 lines 2.07 kB
export declare class ObjectUtils { /** * 深拷贝对象 */ static deepClone<T>(obj: T): T; /** * 合并对象 */ static merge<T extends object>(target: T, ...sources: Partial<T>[]): T; /** * 获取对象指定路径的值 */ static get<T>(obj: T, path: string, defaultValue?: any): any; /** * 判断对象是否为空 */ static isEmpty(obj: object): boolean; /** * 剔除对象中的指定属性 * @param obj 源对象 * @param props 要剔除的属性数组 * @param exclude 为true时剔除指定属性,为false时只保留指定属性 */ static omit<T extends object, K extends keyof T>(obj: T, props: K[], exclude?: boolean): Partial<T>; /** * 比较两个对象是否相等 */ static isEqual(obj1: any, obj2: any): boolean; /** * 将对象扁平化,支持自定义分隔符 */ static flatten(obj: object, delimiter?: string, prefix?: string): Record<string, any>; /** * 将对象转换为查询字符串 */ static toQueryString(obj: Record<string, any>): string; /** * 重命名对象的属性 */ static renameKeys<T extends object>(obj: T, keysMap: Record<string, string>): Record<string, any>; /** * 根据条件过滤对象的属性 */ static filterProperties<T extends object>(obj: T, predicate: (value: any, key: string) => boolean): Partial<T>; /** * 对象深度合并 */ static deepMerge<T extends object>(target: T, ...sources: Partial<T>[]): T; /** * 判断是否为对象 */ private static isObject; /** * 将对象转换为数组 */ static toArray<T extends object>(obj: T): [keyof T, T[keyof T]][]; /** * 从数组创建对象 */ static fromArray<T = any>(arr: [string, T][]): Record<string, T>; /** * 对象属性排序 */ static sort<T extends object>(obj: T, compareFn?: (a: [string, any], b: [string, any]) => number): T; } //# sourceMappingURL=object.d.ts.map