Golang中的Javascript toISOString时间

时间:2016-04-12 19:50:05

标签: javascript go time iso

我试图在Golang中生成ISO 8601时间戳。

time.Now().UTC().Format(time.RFC3339)
//2016-04-12T19:32:20Z

在Javascript中

new Date().toISOString()
//2016-04-12T19:46:47.286Z

似乎唯一的区别在于JavaScript时间报告毫秒,而Golang它在几秒钟内产生它。我想尝试让它们变得相同。

我看过time.RFC3339Nano

但是这会产生太多的精确度2016-04-12T19:35:16.341032697Z

如何让Golang产生相当于JavaScript toISOString()的时间?

1 个答案:

答案 0 :(得分:4)

从pkg / time中查看constants are defined

RFC3339     = "2006-01-02T15:04:05Z07:00"
RFC3339Nano = "2006-01-02T15:04:05.999999999Z07:00"

来自文档:

  

布局中使用的参考时间是具体时间:   1月2日星期一15:04:05 MST 2006

     

要定义自己的格式,请记下参考时间看起来格式化的方式;

它应该是这样的:

JavascriptISOString := "2006-01-02T15:04:05.999Z07:00"
time.Now().UTC().Format(JavascriptISOString)