js-解决1.4000000000000001的问题

1、显示的时候可以用这个

parseFloat(1.4000000000000001.toPrecision(12))

封装哈就是:
function strip(num, precision = 12) { return +parseFloat(num.toPrecision(precision)); }
2、计算的时候,例如加法
function add(num1, num2) { const num1Digits = (num1.toString().split('.')[1] || '').length; const num2Digits = (num2.toString().split('.')[1] || '').length; const baseNum = Math.pow(10, Math.max(num1Digits, num2Digits)); return (num1 * baseNum + num2 * baseNum) / baseNum; }
 

猜你喜欢

转载自www.cnblogs.com/congfeicong/p/10322858.html