当前位置:首页 » 《关于电脑》 » 正文

Vue 数字相加、相减精度丢失处理。

7 人参与  2024年03月24日 18:00  分类 : 《关于电脑》  评论

点击全文阅读


方法 一:

// num 是数值,decimals是精度几位function round(num, decimals) {  const factor = Math.pow(10, decimals);  return Math.round(num * factor) / factor;}const a = 0.1;const b = 0.2;console.log(round(a + b, 1)); // 0.3

方法 二:

//可以传你要的小数几位let num = 2const a = 0.1;const b = 0.2;console.log((a+b).toFixed(num)); // 0.30

方法 三:扩大运算范围:将浮点数转化为整数,相乘或相加后再除回去,可以避免小数位精度的影响。

let num1 = 0.1;let num2 = 0.2;let sum = (num1 * 10 + num2 * 10) / 10;console.log(sum); // 0.3

最后就是使用第三方库:例如 decimal.js、big.js 等第三方库可以提供更高精度的浮点数运算。


点击全文阅读


本文链接:http://zhangshiyu.com/post/84928.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1