检索 Go 模板中切片的最后一个元素
问题:
中一个 Go 模板,可以使用 len .Things 获取切片的大小并为其建立索引使用索引 .Things 4。但是,尝试使用索引 .Things $size 索引最后一个元素会出错,因为索引是从零开始的。有没有不用自定义函数定义的算术解决方案?
答案:
虽然 Go 模板本身不提供算术运算,但您可以使用函数映射。以下是添加“add”函数的方法:
t := template.Must(template.New("").Funcs(template.FuncMap{ "add": func(a, b int) int { return a + b }, }).Parse(theTemplate)
此函数接受两个整数并返回它们的总和。在模板中,它可以按如下方式使用:
{{index .Things (add $size -1)}}
这将返回索引 $size - 1 处的元素,有效地获取切片的最后一个元素。
以上是在没有自定义函数的情况下,如何访问模板中 Go 切片的最后一个元素?的详细内容。更多信息请关注PHP中文网其他相关文章!