Solidity
如何表示完整的大數(全e)
當我使用函式 toNumber() 或 toString() 轉換變數時,我得到這個結果: x.toNumber()
1e+27
但我想看到所有數字的整個數字。因為如果我不轉換數字,大數字格式是這樣的:
BigNumber { s: 1, e: 26, c: [ 9999999500000 ] }
試試這個。我假設您正在從契約中獲取響應。
var theNumber; myContract.getNumber() .then(function(response) { theNumber = response; console.log(theNumber.toString(10)); });
您可以使用 降低幅度
fromWei(theNumber, 'unit')
。就像是var shift18; ... shift18 = fromWei(theNumber, 'ether'); // (18 decimals) console.log(shift18.toString(10));
希望能幫助到你。
試試這個:
var value = new BigNumber(resultis.args._amount);
//將bignumber從wei轉換為ether,十進制18,替換尾隨零
var value = (web3.fromWei(value, “ether”).toFixed(18)).replace(/^0+(\d)|(\d)0+ $ /gm, ’ $ 1$2’);