Heim > Backend-Entwicklung > Golang > Warum enthält die „time.Now()'-Ausgabe von Go in späteren Versionen „m='?

Warum enthält die „time.Now()'-Ausgabe von Go in späteren Versionen „m='?

Patricia Arquette
Freigeben: 2024-12-07 08:29:13
Original
440 Leute haben es durchsucht

Why Does Go's `time.Now()` Output Include

Unerwartete Ausgabe von time.Time: Entmystifizierung des „m=“-Strings

Wenn ein Go-Programm die Funktion time.Now() ausführt , ruft es den aktuellen Zeitstempel ab. Die Standardausgabe dieses Zeitstempels hat sich im Laufe der Zeit weiterentwickelt, insbesondere mit der Veröffentlichung von Go 1.9.

Das „m=“-Enigma

In älteren Versionen von Go die Zeit .Now() würde eine Zeichenfolge im folgenden Format ausgeben:

2018-07-04 12:03:07.2911671 +0530 IST
Nach dem Login kopieren

In Go 1.9 und höher war die Ausgabe jedoch erweitert um eine mysteriöse „m=“-Zeichenfolge:

2018-07-04 12:03:07.2911671 +0800 +08 m=+0.002000201
Nach dem Login kopieren

Warum die Diskrepanz? Dies ist auf die zusätzliche Unterstützung monotoner Uhren in Go 1.9 zurückzuführen. Die Zeichenfolge „m=“ stellt die monotone Zeit seit dem Start des Programms dar, ausgedrückt als Gleitkommazahl in Sekunden.

Vermeiden Sie Formatüberraschungen mit Format()

Anstatt sich auf die Standardausgabe von time.Now() zu verlassen, wird empfohlen, die Funktion Format() zu verwenden, um ein benutzerdefiniertes Format für den Zeitstempel anzugeben. Zum Beispiel:

import (
    "fmt"
    "time"
)

func main() {
    t := time.Now()
    fmt.Println(t.Format("2006-01-02 15:04:05.000000"))
}
Nach dem Login kopieren

Dadurch wird der Zeitstempel unabhängig von der Go-Version in einem konsistenten Format ausgegeben:

2018-07-04 12:03:07.2911671
Nach dem Login kopieren

Durch die Verwendung von Format() können Sie sicherstellen, dass Ihre Programme immer ausgeben Zeitstempel im erwarteten Format.

Das obige ist der detaillierte Inhalt vonWarum enthält die „time.Now()'-Ausgabe von Go in späteren Versionen „m='?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage