Go time包

125 阅读3分钟

文章首发于个人博客

Time

方法说明
Add在该时间上加个时间得到新时间
AddDate在该时间上加个日期得到新时间
After判断该时间是否在另一个时间之后
AppendFormat将该时间格式化为字符串并追加到字节切片中
Before判断该时间是否在另一个时间之前
Clock返回当前时间的时、分、秒
Compare和另一个时间比较大小,返回-1、0、1
Date返回该时间的年、月、日
Day返回该时间的日
Equal判断该时间是否和另一个时间相等
Format将该时间格式化为字符串
GoString返回该时间的字符串表示形式
GobDecode从字节切片中解码该时间
GobEncode将该时间编码为字节切片
Hour返回该时间的小时
ISOWeek返回该时间所在的ISO周
In返回该时间在指定时区对应的时间
IsDST判断该时间是否在夏令时
IsZero判断一个时间值是否为零值
Local返回该时间在本地时区对应的时间
Location返回该时间所在的时区
MarshalBinary将该时间序列化为二进制格式
MarshalJSON将该时间序列化为JSON格式
MarshalText将该时间序列化为文本格式
Minute返回该时间的分钟
Month返回该时间的月份
Nanosecond返回该时间的纳秒
Round将该时间舍入到指定的时间单位
Second返回该时间的秒
String返回该时间的字符串表示形式
Sub在该时间上减去另一个时间得到新时间
Time返回该时间的时间戳
Truncate将该时间截断到指定的时间单位
UTC返回该时间在UTC时区对应的时间
Unix返回该时间的Unix时间戳,单位:秒
UnixMicro返回该时间的Unix时间戳,单位:微秒
UnixMilli返回该时间的Unix时间戳,单位:毫秒
UnixNano返回该时间的Unix时间戳,单位:纳秒
UnmarshalBinary从二进制格式反序列化该时间
UnmarshalJSON从JSON格式反序列化该时间
UnmarshalText从文本格式反序列化该时间
Weekday返回该时间所在的星期几
Year返回该时间的年份
YearDay返回该时间所在的年中的第几天
Zone返回该时间所在的时区名称和偏移量(单位:秒)
ZoneBounds返回该时间所在的时区的夏令时开始和结束时间

包函数

函数名含义说明
Now返回当前时间
Date构造指定的时间
FixedZone构造一个指定偏移时的时区
LoadLocation加载时区信息
LoadLocationFromTZData从TZData文件加载时区信息
Parse解析时间字符串
ParseDuration解析时间间隔字符串
ParseInLocation在指定时区解析时间字符串
Since计算指定时间与现在的间隔等同于time.Now().Sub(t)
Sleep暂停当前协程指定的时间
Unix从Unix时间戳构造时间
UnixMicro从Unix微秒时间戳构造时间
UnixMilli从Unix毫秒时间戳构造时间
Until计算指定时间与现在的剩余时间等同于t.Sub(time.Now())
NewTimer构造一个单次定时器执行一次
NewTicker构造一个周期定时器周期执行
After在指定时间后返回一个time.Time类型的chan执行一次
AfterFunc返回一个Timer,并在指定时间后执行指定的函数执行一次
Tick按指定的周期返回一个time.Time类型的chan周期执行

定时器

Timer是定时执行一次的定时器,Ticker是周期执行的定时器。

成员说明
C一个chan,用于接收定时器触发的时间点
方法说明
Stop停止定时器
Reset重置定时器