Time
The Time object holds a timestamp. It is created with one of the constructors below, and can be built from an epoch, a relative time, or a formatted string parsed with a Go layout.
Constructors
- new Time() // create a time object. The value is set to current timestamp
- new Time(epoch) // create a time object. The epoch could be second or millisecond
- new Time(relativeTime) // create a time object from a relative time
- new Time(layout, value,
<location>)
Time Layouts:
ANSIC = "Mon Jan _2 15:04:05 2006"
UnixDate = "Mon Jan _2 15:04:05 MST 2006"
RubyDate = "Mon Jan 02 15:04:05 -0700 2006"
RFC822 = "02 Jan 06 15:04 MST"
RFC822Z = "02 Jan 06 15:04 -0700" // RFC822 with numeric zone
RFC850 = "Monday, 02-Jan-06 15:04:05 MST"
RFC1123 = "Mon, 02 Jan 2006 15:04:05 MST"
RFC1123Z = "Mon, 02 Jan 2006 15:04:05 -0700" // RFC1123 with numeric zone
RFC3339 = "2006-01-02T15:04:05Z07:00"
RFC3339Nano = "2006-01-02T15:04:05.999999999Z07:00"
Kitchen = "3:04PM"
// Handy time stamps.
Stamp = "Jan _2 15:04:05"
StampMilli = "Jan _2 15:04:05.000"
StampMicro = "Jan _2 15:04:05.000000"
StampNano = "Jan _2 15:04:05.000000000"
DateTime = "2006-01-02 15:04:05"
DateOnly = "2006-01-02"
TimeOnly = "15:04:05"
- location is optional
- If the name is "" or "UTC", the timezone is set to "UTC". Otherwise, the name is taken to be a location name corresponding to a file in the IANA Time Zone database, such as "America/New_York"
timezoneOffset(timezone)
return timezone offset in seconds against the UTC timezone
printf("America/New_York offset: %d", timezoneOffset("America/New_York"))
printf("Europe/Berlin offset: %d", timezoneOffset("Europe/Berlin"))
// America/New_York offset: -14400
// Europe/Berlin offset: 7200