Home > Backend Development > Golang > How to Handle the Last Element in Go's Text Template Comma-Separated Lists?

How to Handle the Last Element in Go's Text Template Comma-Separated Lists?

DDD
Release: 2024-12-06 22:59:12
Original
327 people have browsed it

How to Handle the Last Element in Go's Text Template Comma-Separated Lists?

Last Element Treatment in Go's Text Templates

When using Go's text templates to generate a comma-separated list, it becomes necessary to handle the comma placement for the last element differently.

Solution:

The solution involves utilizing a template's ability to assign variables during iteration. By assigning a second variable to the iteration index, we can distinguish the last element from the others. The following template demonstrates this:

{{ $i := . }}
({{ range $i }}{{ . }}, {{if eq $index (len $. - 1)}}{{/* Empty */}}{{else}},{{end}}{{end}})
Copy after login

In this template, we initialize a variable $i to the slice of values passed to the template. Within the range iteration, we assign a second variable $index to the index of each element.

Explanation:

  • We use {{range $i}} to iterate over the slice, setting $i to each element.
  • The {{if eq $index (len $. - 1)}} expression checks if the current $index equals the length of the slice minus one, which is true for the last element.
  • When the condition is true, the {{/* Empty */}} directive is executed, which does nothing (comment in template).
  • When false, we output a comma (`,

The above is the detailed content of How to Handle the Last Element in Go's Text Template Comma-Separated Lists?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template