以太币的单位
一个整数后面可以跟的一个单位:ether,finney,szabo,wei。
换算如下:
1 ether = 1000 finney
1 ether = 100 0000szabo
1 ether = 10**18wei
时间单位
seconds,minutes,hours,days,weeks,years。
特殊变量和函数
区块和交易属性
block.blockhash(uint blockNumber) returns (bytes32):某个区块的区块链hash值。
block.coinbase(address):当前区块的挖矿地址
block.difficulty(uint):当前区块的难度
block.gaslimit(uint):当前区块的gaslimit
block.number(uint):当前区块编号
block.timestamp(uint):当前区块的时间戳
msg.data(bytes):参数
msg.gas(uint):剩余的gas
msg.sender(address):当前发送消息的地址
msg.sig(bytes4):方法ID
msg.value(uint):伴随消息附带的以太币数量
now(uint):时间戳,等价于block.timestamp(uint)
tx.gasprice(uint):交易的gas单价
tx.origin(address):交易发送地址
错误处理
assert(bool condition):不满足条件,将抛出异常。
require(bool condition):不满足条件,将抛出异常。
revert():抛出异常。
如:
if(msg.sender != owner){ revert(); }
assert(msg.sender == owner);
require(msg.sender == owner);