2016-04-12 41 views
1

Golang'da ISO 8601 zaman damgası oluşturmaya çalışıyorum. JavaScriptJavascript toISOString Saati in zaman Golang

yılında

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

Doing

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

O Golang saniyeler içinde onu üreten ederken tek fark, JavaScript zaman raporlar milisaniye görünür. Bunları aynı olmaya çalışmak istiyorum.

Ben time.RFC3339Nano

baktım Ama bu 2016-04-12T19:35:16.341032697Z

nasıl Golang JavaScript en toISOString() eşdeğerdir zaman üretmek alabilirsiniz çok fazla hassasiyet üretir?

cevap

2

pkg bakarak/Zaman nereye belgelerine constants are defined

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

: Mon 2 Ocak 15:04:

düzenlerinde kullanılan referans zamanı belirli zaman geçerli: 05 MST 2006

Kendi biçimini tanımlamak için, referans zamanının yolunuzu biçimlendirmek üzere nasıl görüneceğini yazın;

O kadar gibi bir şey olmalıdır:

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

iyi çalışıyor. garip, 'RFC3339Milli' ya da tanımlanmış bir şey gibi bir şeye sahip değil .. saniyelerden nanosaniyeye kadar gidiyorlar – K2xL

+0

Haklısınız, ancak dil tasarımcıları minimum bir takım aramaya eğilimlidirler (bazen yararlı şeyler hariç olsa bile). En azından kendi başınıza yapmak oldukça kolaydır. –