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
有疑问加站长微信联系(非本文作者)