Solidity

如何在乙太坊中轉換為 8 位數字

  • January 27, 2020

我有一個 8 位的令牌,所以輸出是 4762575931 而不是 47.62575..

我該如何更改它以便它適用於 UI 和元遮罩輸入?

我知道有 wei 的功能,但這是 18 位小數。

8位小數怎麼辦?我沒有看到 8 位小數的轉換

令牌的 Decimals 屬性基本上是 UI 提示如何呈現令牌數量的提示。所以,你的問題純粹是 UI 問題。基本上,您需要做的是10^decimals在向使用者顯示這些數量之前將代幣數量除以,然後將使用者提供的代幣數量乘以相同的係數,然後再將它們發送到區塊鏈。你只需要為這個算術使用正確的庫,即一個庫,它:

  1. 能夠處理大至 2^256-1 的數字,並且
  2. 能夠在不損失精度的情況下處理小數。

適用於所有主要語言的庫,對於 Javascript,您可以使用這個:https ://github.com/MikeMcl/bignumber.js/

引用自:https://ethereum.stackexchange.com/questions/79333