要在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
。