JavaScript变量定义:逗号与分号

JavaScript变量定义:逗号与分号

在声明一组变量而不是分号时使用逗号有什么区别和/或优点(如果有的话)。

例如:

var foo = 'bar', bar = 'foo';

var foo = 'bar';var bar = 'foo';

我知道如果你var在第一个例子中的第一个变量上指定关键字,它会持久化所有变量,因此它们都会产生与范围相同的最终结果。这只是个人偏好,还是以任何方式做到这都有性能优势?


万千封印
浏览 826回答 4
4回答

慕婉清6462132

没有性能优势,仅仅是个人选择和风格。第一个版本更简洁。更新:就通过网络传输的数据量而言,当然越少越好,但是var为了看到真正的影响,你需要大量的删除声明。有人提到缩小是第一个例子有助于更好地缩小的东西,然而,正如Daniel Vassallo在评论中指出的那样,一个好的缩小器会自动为你做这件事,所以在这方面没有任何影响。

猛跑小猪

在读完Crockford和其他人之后,我开始用逗号将变量链接起来。然后,我真的对Chrome DevTools调试器感到恼火,它不会停止使用逗号定义变量。对于调试器,使用逗号链接的变量定义是单个语句,而多个var语句是调试器可以停止的多个语句。因此,我改回:var a = doSomethingA,     b = doSomethignB,     c = doSomethingC;至:var a = doSomethingA;var b = doSomethignB;var c = doSomethingC;到目前为止,我发现第二个变体更清晰,更不用说它解决调试器问题的优势了。“通过电线的代码较少”这一论点并不具有说服力,因为有缩小器。

吃鸡游戏

我同意其他的回答者,这主要是个人风格的问题。但是为了在讨论中引入“权威”意见,Douglas Crockford 在流行的JSLint工具的网站上说道:但是因为JavaScript没有块范围,所以在函数顶部声明所有函数的变量是明智的。建议每个函数使用一个var语句。这可以通过onevar选项强制执行。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript