Wie kann ich ohne benutzerdefinierte Funktionen auf das letzte Element eines Go-Slice in einer Vorlage zugreifen?

Mary-Kate Olsen
Freigeben: 2024-11-19 11:01:03
Original
544 Leute haben es durchsucht

How Can I Access the Last Element of a Go Slice in a Template Without Custom Functions?

Das letzte Element eines Slice in einer Go-Vorlage abrufen

Frage:

In Bei einer Go-Vorlage ist es möglich, die Größe eines Slice mithilfe von len .Things zu ermitteln und es mithilfe von index .Things 4 zu indizieren. Beim Versuch, das letzte Element mithilfe von index .Things $size zu indizieren, wird jedoch ein Fehler angezeigt, da die Indizierung auf Null basiert. Gibt es eine arithmetische Lösung, ohne auf benutzerdefinierte Funktionsdefinitionen zurückzugreifen?

Antwort:

Obwohl Go-Vorlagen nativ keine arithmetischen Operationen bieten, können Sie ihre Funktionalität mithilfe von erweitern FuncMap. So fügen Sie eine „Add“-Funktion hinzu:

t := template.Must(template.New("").Funcs(template.FuncMap{
    "add": func(a, b int) int { return a + b },
}).Parse(theTemplate)
Nach dem Login kopieren

Diese Funktion nimmt zwei Ganzzahlen und gibt deren Summe zurück. In der Vorlage kann es wie folgt verwendet werden:

{{index .Things (add $size -1)}}
Nach dem Login kopieren

Dadurch wird das Element mit Index $size - 1 zurückgegeben, wodurch effektiv das letzte Element des Slice abgerufen wird.

Das obige ist der detaillierte Inhalt vonWie kann ich ohne benutzerdefinierte Funktionen auf das letzte Element eines Go-Slice in einer Vorlage zugreifen?. 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