要在Go语言的模板中指定一个数组的下标,可以使用index
函数。下面是一个示例代码:
package main
import (
"os"
"text/template"
)
func main() {
tmpl := template.Must(template.New("").Funcs(template.FuncMap{
"index": func(arr []string, i int) string {
if i >= 0 && i < len(arr) {
return arr[i]
}
return ""
},
}).Parse(`{{ index .Arr 2 }}`))
data := struct {
Arr []string
}{
Arr: []string{"a", "b", "c"},
}
err := tmpl.Execute(os.Stdout, data)
if err != nil {
panic(err)
}
}
在上面的代码中,我们定义了一个名为index
的自定义函数,它接收一个字符串数组和一个整数参数,返回指定下标的数组元素。在模板中使用{{ index .Arr 2 }}
语法来调用这个函数,并指定Arr
数组的下标为2。运行代码,输出结果为c
。