青少年叛逆
青少年叛逆
IT培训
广告招商

Go语言模板语法包含什么?老男孩GO语言

  Go是一个开源的编程语言,它能让构造简单、可靠且高效的软件变得更加容易,所以很多人都想要学习GO语言。那么你知道Go语言模板语法有哪些吗?我们来看看吧。

  模板标签

  模板标签用"{{"和"}}"括起来。

  模板注释

  {{/* a comment */}}

  使用“{{/”和“/}}”来包含注释内容。

  变量

  {{.}}

  表示所有 (此标签输出当前对象的值) 。

  {{.Oldboy}}

  表示输出struct对象中字段或方法名称为“Oldboy”的值。

  当“Oldboy”是匿名字段时,可以访问其内部字段或方法,比如“Age”:{{.Oldboy.Age}} ,如果“Age”是一个方法并返回一个struct对象,同样也可以访问其字段或方法:{{.Oldboy.Age.Field1}} 。

  {{.Method "参数1" "参数2"}}

  调用方法“Method”,将后面的参数值依次传递给此方法,并输出其返回值。

  {{$oldboy}}

  此标签用于输出在模板中定义的名称为“oldboy”的变量。当$oldboy本身是一个struct对象时,可访问其字段:{{$oldboy.Field}} 。

  在模板中定义变量:变量名称用字母和数字组成,并带上“$”前缀,采用符号“:=”进行赋值。

  比如:{{$user := "oldboy"}} 或 {{$pwd := 123456}}

  函数

  用法1:

  {{FuncName}}

  此标签将调用名称为“FuncName”的模板函数(等同于执行“FuncName()”,不传递任何参数)并输出其返回值。

  用法2:

  {{FuncName "参数1" "参数2"}}

  此标签将调用“FuncName("参数1", "参数2")”,并输出其返回值。

  用法3:

  {{.Oldboy|FuncName}}

  此标签将调用名称为“FuncName”的模板函数(等同于执行“FuncName(Oldboy)”,将竖线“|”左边的“.Oldboy”变量值作为函数参数传送)并输出其返回值。

  条件判断

  用法1:

  {{if 布尔表达式 }} 在布尔表达式为 true 时执行 {{end}}

  标签结构:{{if …}} … {{end}} 。

  用法2:

  {{if 布尔表达式}} 在布尔表达式为 true 时执行 {{else}} 在布尔表达式为 false 时执行 {{end}}

  标签结构:{{if …}} … {{else}} … {{end}} 。

  用法3:

  {{if 布尔表达式1 }} 在布尔表达式1为 true 时执行 {{else if 布尔表达式2 }} 在布尔表达式2为 true 时执行 {{end}}

  标签结构:{{if …}} … {{else if …}} … {{end}} 。

  遍历

  用法1:

  {{range $k, $v := .Var}} {{$k}} => {{$v}} {{end}}

  range…end结构内部如要使用外部的变量,比如.Var2,需要这样写:$.Var2(即:在外部变量名称前加符号“$”即可,单独的“$”意义等同于global)。

  用法2:

  {{range .Var}} {{.}} {{end}}

  这种方式通过“.”来访问对应的value 。

  用法3:

  {{ range . }} 有可遍历的值时执行 {{else}} 无可遍历的值时执行 {{end}}

  当没有可遍历的值时,则会执行else分支的部分。

  老男孩教育专注Linux云计算运维工程师、Python全栈+人工智能、Python自动化运维开发、网络安全、数据分析、新媒体运营、MySQLDBA开发、K8S微服务、Go语言等互联网课程培训。欢迎对it行业感兴趣的朋友们来公司考察及学习。

已邀请:

要回复问题请先登录注册

狗粮批发
嘿,进入会员专区!