UNPKG

util-helpers

Version:

一个基于业务场景的工具方法库

70 lines (69 loc) 2.12 kB
/** * 参考: https://github.com/nefe/number-precision/blob/master/src/index.ts * * 解决浮动运算问题,避免小数点后产生多位数和计算精度损失。 * 问题示例:2.3 + 2.4 = 4.699999999999999,1.0 - 0.9 = 0.09999999999999998 */ /** * 将值转换为有效数值 * * @param {*} value 要转换的值 * @returns {number|string} 有效数值 */ export declare function transformEffectiveNumber(value: any): string | number; /** * 是否为科学计数法数字 * * @param {string} num 检查值 * @returns {boolean} */ export declare function isScientificNumber(num: string): boolean; /** * 把错误的数据转正 * * @param {number} num 输入数 * @param {number} [precision=12] 小数点的精度 * @returns {number} * @example * * strip(0.09999999999999998)=0.1 */ export declare function strip(num: number, precision?: number): number; /** * 计算数字的小数点长度,支持科学记数法 * * @param {number|string} num 输入数 * @returns {number} 小数点长度 */ export declare function digitLength(num: number | string): number; /** * 把小数转成整数,支持科学计数法。如果是小数则放大成整数 * * @param {number|string} num 输入数 * @returns {number} */ export declare function float2Fixed(num: number | string): number; /** * 检测数字是否越界,如果越界给出提示 * * @param {number} num 输入数 */ export declare function checkBoundary(num: number): void; /** * 去掉左边数字0 * * @param {string} num 数字字符串 * @returns {string} */ export declare function trimLeftZero(num: string): string; /** * 科学计数法转换成普通数字 * * JavaScript在以下情景会自动将数值转换为科学计数法: * 1.小数点前的数字个数大于等于22位 * 2.小数点前边是0,小数点后十分位(包含十分位)之后连续零的个数大于等于6个 * * @param {string | number} num 科学计数法数字 * @returns {string | number} 转换后的数字字符串 */ export declare function scientificToNumber(num: number | string): string | number;