【发布时间】:2018-03-21 07:50:00
【问题描述】:
我在 truffle development 模式下使用 Truffle MetaCoin box。前端试图获取一个帐户的余额,但得到一个巨大的数字。
前端代码如下:
var coinbase = web3.eth.coinbase;
var balance = web3.eth.getBalance(coinbase).toNumber();
更具体地说,默认情况下,truffle 生成的第一个帐户应该有 10k 余额。按照上面的链接运行一项测试后。它的余额应该是 9990。如果我在测试文件中 console.log 它,这将正常工作。
但是我从前端得到的 balance 变量是 100000000000000000000。经过测试,它变为 99917820100000000000。这个差异显然不是 10 或其指数。
为什么以及如何解决这个问题?
已编辑
余额有误。固定在上面。
【问题讨论】:
-
您能否说明您对代币余额或以太币余额感兴趣?似乎两者之间可能存在混淆。您正在测量以太币余额(100000000000000000000 wei 是 10 以太币,而 99835640200000000000 可能是为某些测试用例支付 gas 后的以太币余额)。
-
交易费用
-
交易费6.43598?根据文档,返回值以 wei 为单位,因此它是一个大整数:github.com/ethereum/wiki/wiki/JavaScript-API#web3ethgetbalance
-
@Ryan 但 OP 目前没有使用真正的以太坊区块链
标签: javascript ethereum truffle web3