Heim > Backend-Entwicklung > Golang > Wie formatiere ich Float-Werte in Go-HTML-Vorlagen?

Wie formatiere ich Float-Werte in Go-HTML-Vorlagen?

Mary-Kate Olsen
Freigeben: 2024-11-08 01:25:02
Original
966 Leute haben es durchsucht

How to Format Float Values in Go HTML Templates?

Float in Go-Vorlagen formatieren

Das Formatieren von float64-Werten in Go-HTML-Vorlagen kann mit mehreren Methoden erfolgen.

1. Formatieren Sie den Float vor

Formatieren Sie den Float mit fmt.Sprintf(), bevor Sie ihn an die Vorlage übergeben:

func main() {
  t := template.New("")
  data := map[string]interface{}{
    "value": strconv.FormatFloat(3.1415, 'f', 2, 32),
  }
  _ = t.Execute(os.Stdout, data) // Render the template with formatted value
}
Nach dem Login kopieren

2. Erstellen Sie eine String()-Funktion

Definieren Sie einen benutzerdefinierten Typ mit einer String()-Methode, die den Wert nach Ihren Wünschen formatiert:

type MyFloat struct {
  value float64
}

func (f MyFloat) String() string {
  return fmt.Sprintf("%.2f", f.value)
}

func main() {
  t := template.New("")
  data := map[string]interface{}{
    "value": MyFloat{3.1415},
  }
  _ = t.Execute(os.Stdout, data) // Render the template with custom type
}
Nach dem Login kopieren

3. Rufen Sie printf() in der Vorlage auf

Rufen Sie printf() in der Vorlage mit einer benutzerdefinierten Formatzeichenfolge auf:

{{printf "%.2f" .value}}
Nach dem Login kopieren

4. Registrieren Sie eine benutzerdefinierte Funktion

Registrieren Sie eine benutzerdefinierte Funktion, um den Formatierungsprozess zu vereinfachen:

tmpl := template.New("")
tmpl = tmpl.Funcs(template.FuncMap{
  "myFormat": func(f float64) string {
    return fmt.Sprintf("%.2f", f)
  },
})

func main() {
  data := map[string]interface{}{
    "value": 3.1415,
  }
  _ = tmpl.Execute(os.Stdout, data) // Render the template using custom function
}
Nach dem Login kopieren

In der Vorlage:

{{myFormat .value}}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie formatiere ich Float-Werte in Go-HTML-Vorlagen?. 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