vite-uni-dev-tool
Version:
vite-uni-dev-tool, debug, uni-app, 一处编写,到处调试
56 lines • 2.01 kB
TypeScript
/**
* 自定义set函数 - 安全地设置嵌套对象属性
* @param obj 目标对象
* @param path 属性路径数组
* @param value 要设置的值
*/
export declare function setValueByPath(obj: any, path: string, value: any): void;
export declare function getValueByPath(obj: any, path: string, defaultValue?: any): any;
/**
* 计算对象在内存中的近似大小
* @param obj 要计算大小的对象
* @returns 对象的近似大小(以字节为单位)
*/
export declare function calculateObjectSize(obj: any): number;
/**
* 存储单位转换
* @param bytes 字节数
* @param options 转换选项
* @returns 转换后的存储大小字符串
*/
interface FormatStorageOptions {
precision?: number;
useBinary?: boolean;
includeUnit?: boolean;
}
export declare function formatStorageSize(bytes: number, options?: FormatStorageOptions): string;
/**
* 序列化包含循环引用的对象
* @param {Object} obj - 要序列化的对象
* @param {WeakMap} [visited] - 用于记录已处理的对象(内部递归使用)
* @returns {string} - 序列化后的字符串
*/
export declare function serializeCircular(obj: any, options?: {
maxDepth: number;
visited: WeakMap<any, true>;
}): string;
/**
* 处理value
* 基础类型数据直接返回value
* 引用类型数据判断 value 是否存在循环引用的情况,存在则将循环引用的第二次赋值为 [Circular]
* 最大处理 deep 层数
*
* @export
* @param {*} value
* @param {number} [deep=6]
*/
export declare function parseValue(value: any, deep?: number): any;
/**
* 从对象中提取指定的属性,创建一个只包含这些属性的新对象
* @param obj 源对象
* @param keys 要提取的属性名数组
* @returns 包含指定属性的新对象
*/
export declare function pick<T extends Record<string, any>, K extends keyof T>(obj: T, keys: K[]): Pick<T, K>;
export {};
//# sourceMappingURL=object.d.ts.map