首页 > 其他分享 >如何处理大数加减乘除,解决精度丢失问题

如何处理大数加减乘除,解决精度丢失问题

时间:2023-02-10 17:14:59浏览次数:72  
标签:BigNumber power 大数 丢失 total data ethers 加减乘除

当我们处理大数的加减乘除的时候,直接加减会出现精度丢失的问题,或者出现科学记数法带e,这样我们在显示的时候就不合理,我看了好多的文章大部分都是将数字分割成字符串进行拼接转换,个人感觉太麻烦了,而且使用范围不广,推荐使用ethers 第三方工具

安装使用 

注意:ethers 是面向区块链Dapp开发的一个三方库,所以处理的一般都是18位的大数,处理之后的数据也是大数字符串需要进一步处理 https://www.cnblogs.com/ximenchuifa/category/2198898.html

yarn add ethers 
npm i ethers
import { BigNumber, utils } from 'ethers'

//BigNumber.from(字符串)

//加
const total = BigNumber.from(data.total_base_power) .add(data.total_overlay_power) .toString()
//减
const total = BigNumber.from(data.total_base_power) .sub(data.total_overlay_power) .toString()  
//乘
const total = BigNumber.from(data.total_base_power) .mul(data.total_overlay_power) .toString()  
//除
const total = BigNumber.from(data.total_base_power) .div(data.total_overlay_power) .toString()   getResultData(total) //会返回可展示的数据


 

 

 

标签:BigNumber,power,大数,丢失,total,data,ethers,加减乘除
From: https://www.cnblogs.com/ximenchuifa/p/17109656.html

相关文章