再深刻理解下web3.js中estimateGas如何计算智能合约消耗的gas量

我们可使用web3.js框架的estimateGas函数获得一个以太坊智能合约的Gas估计值 ,通过执行一个消息调用或交易,该消息调用或交易直接在节点的VM中执行,并未在区块链中确认,函数会返回估算使用的gas量。

函数调用:

web3.eth.estimateGas(callObject [, callback])
复制代码

参数:

在 web3.eth.sendTransaction 中, 参数大都是可选的。

  1. Object - 要发送的交易对象:
  • from: String - 用来传送的账户地址. 默认使用web3.eth.defaultAccount属性。
  • to: String - (可选) 目标地址,对于创建合同的交易没有定义。
  • value: Number|String|BigNumber - (可选) 为交易转移的价值以Wei为单位,如果是合同创建交易,也是基金。
  • gas: Number|String|BigNumber - (可选, 默认: 待定) 用于交易的gas量(未使用的gas已退还)。
  • gasPrice: Number|String|BigNumber - (可选, 默认: 待定) 此交易的gas价格以wei为单位,默认为平均网络gas价格。
  • data: String - (可选) Either 包含消息关联数据的字节字符串,或者创建合同事务的初始化代码。
  • nonce: Number - (可选)一个随机数的整数。 这允许覆盖使用相同随机数的您自己的未决事务。
  1. Fun
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值