Heim >Backend-Entwicklung >Golang >Wie formatieren Sie Gleitkommazahlen in Go HTML/Vorlagen?

Wie formatieren Sie Gleitkommazahlen in Go HTML/Vorlagen?

Susan Sarandon
Susan SarandonOriginal
2024-11-06 02:39:02652Durchsuche

How Do You Format Floating-Point Numbers in Go HTML/Templates?

Floatzahlen in Go HTML/Vorlage formatieren

Bei der Arbeit mit Gleitkommazahlen in Go-Vorlagen ist es häufig erforderlich, diese zu Anzeigezwecken zu formatieren. Hier sind verschiedene Methoden zum Formatieren von Floats in HTML/Vorlage:

1. Vorformatierung im Controller

Bevor Sie den Float an die Vorlage übergeben, können Sie ihn im Controller mit strconv.FormatFloat() formatieren.

2. Benutzerdefinierte Typen

Erstellen Sie einen benutzerdefinierten Typ, der die String()-Methode implementiert, die den Float mit der gewünschten Genauigkeit formatiert. Die Template-Engine verwendet diese Methode automatisch zur Formatierung.

3. Explizites printf im Template

Sie können printf direkt innerhalb des Templates aufrufen und die gewünschte Formatzeichenfolge angeben.

4. Benutzerdefinierte Funktion

Registrieren Sie eine benutzerdefinierte Funktion, die den printf-Aufruf mit der gewünschten Formatzeichenfolge umschließt. Dadurch wird vermieden, dass die Formatzeichenfolge in der Vorlage wiederholt wird.

Beispiel:

Verwendung des benutzerdefinierten Funktionsansatzes in einem Gin-Gonic-Backend:

func main() {
    router := gin.Default()
    router.GET("/", func(c *gin.Context) {
        data := map[string]interface{}{
            "n0": 3.1415,
            "n1": "%.2f", // Format string
        }
        c.HTML(http.StatusOK, "index.html", data)
    })
    router.Run()
}

In index.html:

Number: {{printf n1 n0}}

Dadurch wird der n0-Float auf 2 Dezimalstellen formatiert.

Das obige ist der detaillierte Inhalt vonWie formatieren Sie Gleitkommazahlen in Go HTML/Vorlagen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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