乙太坊交易相關操作

gas 價格換算

在送出交易時, 因為需要 gasPrice, 而價格會影響礦工打包交易的意願, 因此需要了解價格現況. 1 gas = 20 gwei 參考現價 (ETH 監控統計)
1 transaction 需要約 21000 gas
換算成 ether

> web3.toWei(20, 'gwei')
'20000000000'
> web3.toWei(20, 'gwei') * 21000
420000000000000
> web3.fromWei(web3.toWei(20, 'gwei') * 21000, 'ether')
'0.00042'

傳送交易
標準傳送交易的指令傳送交易

> web3.eth.sendTransaction({from: acct1, to: acct2, value: web3.toWei(1, "ether"), gasLimit: 21000, gasPrice: 2000000000})


交易花費 = 送出的 Ether + 花費的 gas 價格
以下例子展示: acct1 –> acct2 (2 ETH + 0.000084 ETH)
另外, 在 Ethereum 中為避免交易雙花, 所以透過 nonce 紀錄帳號地址過去送的交易, 可看作流水號 (Seq#). 利用 web3.eth.getTransactionCount(acct1) 可取得下一次當帳號要送交易時, 需要的 nonce, 另外 nonce 具備連續性, 否則會報錯.

Register for full content, it's FREE

已是會員,

政大資訊科學系助理教授、AMIS 科學家、以太坊基金會研究員、Taipei Ethereum Meetup社群組織一員

Add a new comment