为什么这个变量声明中有一个逗号:
// RinkebyBootnodes are the enode URLs of the P2P bootstrap nodes running on the
// Rinkeby test network.
var RinkebyBootnodes = []string{
"enode://a24ac7c5484ef4ed0c5eb2d36620ba4e4aa13b8c84684e1b4aab0cebea2ae45cb4d375b77eab56516d34bfbd3c1a833fc51296ff084b770b94fb9028c4d25ccf@52.169.42.101:30303", // IE
"enode://343149e4feefa15d882d9fe4ac7d88f885bd05ebb735e547f12e12080a9fa07c8014ca6fd7f373123488102fe5e34111f8509cf0b7de3f5b44339c9f25e87cb8@52.3.158.184:30303", // INFURA
}
我说的是逗号:
30303", // INFURA
它是字符串数组的最后一个字符,它必须去那里,否则我会收到编译错误。
在C语言中,你不能在大括号{}结尾处使用逗号,但是你必须这样做。为什么?这个逗号是什么意思?
答案 0 :(得分:1)
逗号是一个元素分割器。元素可以像连续一样写在列中:
{1, 2, 3}
{
1,
2,
3,
}
在最后一个元素之后,显而易见的逗号是不必要的。有些语言需要像C一样缺席,有些语言像Go一样存在,有些语言允许像Python这样的变种。有时它会导致旧的Internet Explorer中的JavaScript等错误。
为什么地鼠决定保留这个逗号? Go的一个关键原则是视觉简洁性和可读性。这样所有字符串看起来都是一样的。用眼睛读它们会更容易。另外假设你再添加一行 - 你必须编辑前一行。这会在差异中产生视觉噪音。
同样地想到你的想法逗号不应该在一个内容中。因为破坏可读性作为额外的符号。