簡體   English   中英

Ethers BigNumber 到 USD 的轉換

[英]Ethers BigNumber to USD conversion

我正在嘗試將以太坊價值轉換為其追溯法幣價值。 美元的最終價值似乎是錯誤的,我想知道它是不是用大數計算的。

為了方便起見,我附上了一個沙箱。 https://codesandbox.io/s/autumn-sun-0k02d5?file=/src/index.js

試圖

const one = parseUnits("1");
const price = parseUnits("0.1");
const _rate = "1563.48";
const rate = parseUnits(_rate, 2);
const usdPrice = price.lt(one) ? rate.mul(price) : rate.div(price);

預期: usdPrice = 156.348

實際: usdPrice = 15634.8

試試這個代碼:

import { formatEther, parseEther } from "@ethersproject/units";

// const price = parseUnits("0.00000000000000001");
// const price = parseUnits("0.00000001000000000");
const price = parseEther("0.1");
const _rate = "1563.48";
const rate = parseFloat(_rate);
const usdPrice = rate * price;

document.getElementById("app").innerHTML = `
<p>Price in Eth ${formatEther(price)}</p>
<p>Price in USD ${formatEther(usdPrice.toString())}</p>
<p>1 ETH = ${rate}</p>
<p>Balance: ${formatEther(price)} Rate: ${rate}</p>
`;

由於匯率以美元為單位,您應該將其解析為浮點數,而不是 gwai。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM