UNPKG

mstf-kit

Version:

一个现代化的 JavaScript/TypeScript 工具库,提供了丰富的常用工具函数

40 lines (39 loc) 1.31 kB
/** * 对象相关工具函数 */ /** * 深拷贝对象 * @param obj 要拷贝的对象 */ export declare function deepClone<T>(obj: T): T; /** * 获取对象的嵌套属性值 * @param obj 目标对象 * @param path 属性路径,可以是字符串路径(用.分隔)或者路径数组 * @param defaultValue 默认值,当属性不存在时返回 */ export declare function get(obj: any, path: string | string[], defaultValue?: any): any; /** * 设置对象的嵌套属性值 * @param obj 目标对象 * @param path 属性路径,可以是字符串路径(用.分隔)或者路径数组 * @param value 要设置的值 */ export declare function set(obj: any, path: string | string[], value: any): void; /** * 从对象中选择指定的属性 * @param obj 源对象 * @param keys 要选择的属性数组 */ export declare function pick<T extends object, K extends keyof T>(obj: T, keys: K[]): Pick<T, K>; /** * 从对象中排除指定的属性 * @param obj 源对象 * @param keys 要排除的属性数组 */ export declare function omit<T extends object, K extends keyof T>(obj: T, keys: K[]): Omit<T, K>; /** * 合并对象(深度合并) * @param objects 要合并的对象数组 */ export declare function merge<T extends Record<string, any>>(...objects: T[]): T;