当前位置 : 主页 > 编程语言 > java >

Solidity 常用方法总结

来源:互联网 收集:自由互联 发布时间:2022-06-23
block中的方法 ​​block.blockhash(uint blockNumber) returns (bytes32)​​​:给定块的散列 - 仅适用于256个最近的块 ​​​block.coinbase (address)​​​:当前块矿工的地址 block.difficulty (uint):当前块难度

block中的方法

​​block.blockhash(uint blockNumber) returns (bytes32)​​​:给定块的散列 - 仅适用于256个最近的块
​​​block.coinbase (address)​​​:当前块矿工的地址
block.difficulty (uint):当前块难度
block.gaslimit (uint):当前块gaslimit
block.number (uint):当前块号
block.timestamp (uint):当前块的时间戳

msg中的方法

msg.data (bytes):完整的calldata
msg.gas (uint): 剩余gas
msg.sender (address): 消息的发送者(当前呼叫)
msg.value (uint): 与消息一起发送的数量
now (uint):当前块时间戳(block.timestamp的别名)

address中的方法

​​<address>.balance (uint256)​​​ : 余额地址在wei
​​​<address>.send(uint256 amount) returns (bool)​​​ : wei发送给定量到地址,失败时返回假
​​​<address>.transfer(uint256 amount)​​ : 发给定量的wei先解决,抛出失败

其他方法

tx.gasprice (uint): gas价格的交易
tx.origin (address) :交易的发送者(全调用链)
assert(bool condition): 如果条件为false,则中止执行并恢复状态更改(用于内部错误)
require(bool condition): 如果条件为false,则中止执行并恢复状态更改(用于格式错误的输入或外部组件中的错误)
revert(): 中止执行并恢复状态更改
keccak256(…) returns (bytes32):计算(紧密包装)参数的Ethereum-SHA-3(Keccak-256)散列
sha3(…) returns (bytes32):keccak256的别名
sha256(…) returns (bytes32): 计算(紧密包装)参数的SHA-256散列
ripemd160(…) returns (bytes20) : 计算(紧密包装)参数的RIPEMD-160哈希值
ecrecover(bytes32 hash, uint8 v, bytes32 r, bytes32 s) returns (address) : 从椭圆曲线签名恢复与公钥相关联的地址,错误返回零
addmod(uint x, uint y, uint k) returns (uint) : 计算(x + y)%k,其中以任意精度执行加法,并且不在2 ** 256周围

mulmod(uint x, uint y, uint k) returns (uint) : 计算(x * y)%k,其中以任意精度执行乘法,并且不会在2 ** 256周围
this (current contract’s type) : 目前的合约,明确转换为地址
super : 较高的继承层次结构中的合同一个级别
selfdestruct(address recipient) : 摧毁目前的合约,将资金送到给定地址
suicide(address recipieint) : selfdestruct的别名


上一篇:solidity无法返回结构体
下一篇:没有了
网友评论