/** * 数字精度处理工具函数 */ /** * 加法运算(避免浮点数精度问题) * @param num1 第一个数 * @param num2 第二个数 * @param precision 精度,默认为2位小数 * @returns 计算结果 */ export function add(num1: number, num2: number, precision = 2): number { return parseFloat((num1 + num2).toFixed(precision)) } /** * 减法运算(避免浮点数精度问题) * @param num1 被减数 * @param num2 减数 * @param precision 精度,默认为2位小数 * @returns 计算结果 */ export function subtract(num1: number, num2: number, precision = 2): number { return parseFloat((num1 - num2).toFixed(precision)) } /** * 乘法运算(避免浮点数精度问题) * @param num1 第一个数 * @param num2 第二个数 * @param precision 精度,默认为2位小数 * @returns 计算结果 */ export function multiply(num1: number, num2: number, precision = 2): number { return parseFloat((num1 * num2).toFixed(precision)) } /** * 除法运算(避免浮点数精度问题) * @param num1 被除数 * @param num2 除数 * @param precision 精度,默认为2位小数 * @returns 计算结果 */ export function divide(num1: number, num2: number, precision = 2): number { return parseFloat((num1 / num2).toFixed(precision)) } /** * 格式化数字,保留指定小数位数 * @param num 数字 * @param precision 小数位数 * @returns 格式化后的数字 */ export function formatNumber(num: number, precision = 2): number { return parseFloat(num.toFixed(precision)) }