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;
}
 
posted @ 2019-01-26 11:02  夏天的鱼呀  阅读(677)  评论(0编辑  收藏  举报