codecamp

单位

以太单位

文字数字可以采用 后缀weigweiether指定 Ether 的子面额,其中不带后缀的 Ether 数字被假定为 Wei。

assert(1 wei == 1);
assert(1 gwei == 1e9);
assert(1 ether == 1e18);

小面额后缀的唯一效果是乘以十的幂。

笔记

面额finneyszabo已在 0.7.0 版中删除。

时间单位

seconds像, minuteshours,days和after 字面数字这样的后缀weeks 可用于指定时间单位,其中秒是基本单位,单位以下列方式被天真地考虑:

  • 1 == 1 seconds

  • 1 minutes == 60 seconds

  • 1 hours == 60 minutes

  • 1 days == 24 hours

  • 1 weeks == 7 days

如果您使用这些单位执行日历计算,请小心,因为并非每年都等于 365 天,而且由于闰秒,甚至每天都有 24 小时。由于无法预测闰秒,因此必须由外部预言机更新精确的日历库。

笔记

years由于上述原因,该后缀在 0.5.0 版本中已被删除。

这些后缀不能应用于变量。例如,如果你想以天为单位解释一个函数参数,你可以通过以下方式:

function f(uint start, uint daysAfter) public {
    if (block.timestamp >= start + daysAfter * 1 days) {
      // ...
    }
}
字面量和基本类型之间的转换
块和事务属性
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }