golang 知识点
陈好 · · 4384 次点击 · · 开始浏览1.//.(type),比如 username.(string)
&:类型断言,是interface{}转string
2..//判断网页中checkbox是否被选中
&:为checkbox添加value属性,后台判断r.FormValue(checkbox的name属性) != "",表示被选中
3.//直接输出HTML
string类型go的template处理时会自动做escape处理,用template.HTML类型就不会了
values := map[string]template.HTML{"html": template.HTML("<br/>")}
4.//slice赋值
var a = []string{
"1",
"2",
}
func Do() (c []string) {
b := a
log.Print(len(b), cap(b))//2,2 len = cap 了,append后将创建新的底层数组
b = append(b, "3")
log.Print(len(b), cap(b))
log.Print(b, a)
return b
}
func Do1() (c []string) {
b := a //这是引用,b,a指向同一个底层array
log.Print(b, a)
b[1] = "3" //a同时变化
log.Print(b, a)
return b
}
//slice赋值
func Do2() (c []string) {
c = make([]string, 2) //要先声明否则下面赋值时会越界
copy(c, a)
log.Print(c, a)
c[1] = "2"
log.Print(c, a)
return c
}
slice具体使用可参考http://blog.golang.org/go-slices-usage-and-internals
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
关注微信- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码` - 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传
收入到我管理的专栏 新建专栏
1.//.(type),比如 username.(string)
&:类型断言,是interface{}转string
2..//判断网页中checkbox是否被选中
&:为checkbox添加value属性,后台判断r.FormValue(checkbox的name属性) != "",表示被选中
3.//直接输出HTML
string类型go的template处理时会自动做escape处理,用template.HTML类型就不会了
values := map[string]template.HTML{"html": template.HTML("<br/>")}
4.//slice赋值
var a = []string{
"1",
"2",
}
func Do() (c []string) {
b := a
log.Print(len(b), cap(b))//2,2 len = cap 了,append后将创建新的底层数组
b = append(b, "3")
log.Print(len(b), cap(b))
log.Print(b, a)
return b
}
func Do1() (c []string) {
b := a //这是引用,b,a指向同一个底层array
log.Print(b, a)
b[1] = "3" //a同时变化
log.Print(b, a)
return b
}
//slice赋值
func Do2() (c []string) {
c = make([]string, 2) //要先声明否则下面赋值时会越界
copy(c, a)
log.Print(c, a)
c[1] = "2"
log.Print(c, a)
return c
}
slice具体使用可参考http://blog.golang.org/go-slices-usage-and-internals