com-tools
Version:
com-tools 提供了一些通用的工具函数;
26 lines • 1.54 kB
TypeScript
/**
* 由于 eval() 有 安全 和 性能 的问题,所以封装了本函数 来 替代 eval()
* 本方法采用 Function 的方式 来实现 eval() 的效果;
* @param code
*/
export declare function betterEval(code: string): any;
/**
* 拷贝构造函数,与 copyFunction 相比,该函数还会还原构造函数的继续链,即 prototype
* @param fun
*/
export declare function copyConstructor<F extends Function>(fun: F): F;
export declare function copyFunction<F extends Function>(fun: F): F;
/**
* 根据函数字符串 和 函数名字 来创建函数
* @param funString:string 必选; 函数的代码字符串,必须是完整的函数代码字符串,不能是函数体的代码片断,可通过函数的 toString() 方法获得;
* @param name?:string 可选; 函数的名字;
* @param asDefault?:boolean 可选;name 参数是否作为函数名字的默认值(当 funString 中不包含函数名字时,再使用 name 作为函数的名字)
*/
export declare function createFunctionBy(funString: string, name?: string, asDefault?: boolean): Function;
/**
* 为指定的函数 fun 创建对应的 单例函数
* @param fun : Function 普通函数 或者 构造函数
* @return Function 增加了单例机制的函数;该函数的使用方式 和 原函数 fun 一样,只是无论多少次调用该函数,该函数都会返回原函数 fun 的同一实例
*/
export declare function createSingleton<Fun extends Function>(fun: Fun): Fun;
//# sourceMappingURL=tools.d.ts.map