js 计算精度问题解决
/** * * * @param x 需处理精度的数 * @param n 小数点后第 n 位 * @returns 处理后的数 */ function roundFractional(x, n) { return Math.round(x * Math.pow(10, n)) / Math.pow(10, n); }
示例:
console.log(0.1+0.2); console.log(roundFractional((0.1+0.2),1)); console.log(roundFractional((0.1+0.2),2)); console.log(roundFractional(1.23456,2)); console.log(roundFractional(1.23456,3));
结果:
0.30000000000000004 0.3 0.3 1.23 1.235