最近我在玩Google的新编程语言Go
并想知道为什么赋值运算符:=在等号前面有一个冒号= ?语言的作者为什么要使用name := "John"而不是name = "John"
:=
=
name := "John"
name = "John"
该:=符号既用作声明,又用作初始化。
foo := "bar"
相当于
var foo = "bar"
foo = "bar"您可能会问,为什么不像只使用任何脚本语言一样使用?好吧,那是为了避免错别字。
foo = "bar"
foo = "bar" fooo = "baz" + foo + "baz" // Oops, is fooo a new variable or did I mean 'foo' ?