在《深入浅出node.js》一书的附录中,作者介绍了var和逗号的使用规范。
其中C.2.1.2 变量声明中,说到每行生命都应该带上一个var,而不是只有一个var。
但是在C.2.1.6 逗号中,却遇到了这样的正确示例:
var foo = 'hello' , bar = 'world';
还有这里的“如果逗号不在行结尾,前面需要一个空格”,应该是后面需要一个空格吧?
关于var,Ghost似乎没有遵循这个规定:https://github.com/TryGhost/Ghost/blob/master/core/server/index.js
11 回复
代码规范和代码风格,都只能说约定,每个人都有各自的习惯,没有绝对的对与错之分,看别人的代码规范,需要了解为什么这样写会更好。
每一行声明都带一个 var 有两个优点:
- 删除一个变量声明都很容易(直接删除行)
- 查看 diff 的时候不会互相影响
如果 ghost 觉得不需要这两点而选择打字更少的一个 var 的风格,只是仁者见仁,智者见智的问题。
- 这是一行的声明:
var foo=1, bar = 2;//这是符合 *每一行一个var* 的约定的
2.这是二行的声明:
//*如果逗号不在行尾, 则逗号前面要缩进一格*
var foo = 1
, bar = 2;
3.同意@dead-horse 的观点