javascript - 为什么要关心 Node.js 中的尾随逗号?

标签 javascript node.js

在大多数 Node.js 库中,人们特别注意删除最后一对键属性对象后的尾随逗号:

var test = {
    key1: 123,
    key2: 456,
    key3: 789
};

这会在编辑代码时产生一些麻烦,例如要交换最后两个键值对,还必须添加一个逗号并删除一个。有些人将逗号移到下一行,这解决了最后一个元素的问题,但也使代码更难阅读(恕我直言):

var test = {
      key1: 123
    , key2: 456
    , key3: 789
};

另一方面,据我所知,JavaScript 中的尾随逗号只会在某些 IE 浏览器中产生问题。所以我想知道是否有任何技术理由不在 Node.js 中使用尾随逗号编写散列? (像下面这样:)

var test = {
    key1: 123,
    key2: 456,
    key3: 789,        
};

最佳答案

不,没有这样做的技术原因。

但是,我从不在尾随逗号,只是因为我认为这样可以使代码更简洁。可能有些人也有来自网络开发的习惯,就像你提到的那样,由于 IE,你需要小心那些。

编辑:这个答案在 2012 年是有道理的,但今天,随着主要浏览器的支持和针对旧浏览器的 Babel 等工具,我认为尾随逗号应该是每个人的默认设置。好处是它使添加新行更容易,并且相关的 Git diff 更清晰。

关于javascript - 为什么要关心 Node.js 中的尾随逗号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9501657/

相关文章:

javascript - 使用 .call() 在 JavaScript 中继承对象的不同方法

javascript - console.log 按顺序调用 -> 无序执行

javascript - 谓词 Angular 2 上的过滤数组

mysql - 如何将MySQL风格的问号 `?`绑定(bind)参数转换为Postgres风格的 `$1`绑定(bind)参数

node.js - 使用 mongoose 设置数据库和集合

javascript - 尝试根据用户输入显示数组中的元素

带有文字和单引号的 JavaScript 正则表达式

mysql - 无法解析从 MySQL 返回的 JSON

javascript - ".send is not a function",试图让玩家 1 知道玩家 2 已连接。 (NodeJS、websockets、JavaScript)

javascript - node.js 中的 Node 到底是什么?