【问题标题】:Preferring {foo: bar} or {foo : bar} (extra space after :) style in Javascript [closed]在Javascript中更喜欢{foo:bar}或{foo:bar}(:)样式[关闭]
【发布时间】:2012-10-19 22:29:44
【问题描述】:

对于是否应该写作有任何社区共识

   {foo: bar} 

   {foo : bar} 

在 Javascript 中。

看起来 JsHint 不关心问题。

例如,在具有类似字典结构的 Python 上,首选名称后没有多余空格的样式。

这是大型开源代码库中编码风格的一致性问题。我真的不在乎缩小输出的样子。我只是想确保我的奴才生成一致的源代码

【问题讨论】:

  • 这一切最终都会被缩小,对吧?那么,为什么不用空格呢?
  • 因为风格上的一致性和约定性
  • @KelvinMackay:按照您喜欢的个人风格编写代码总是最容易的,跨团队的一致性只会让该团队 50%* 的人更容易编写代码。对于剩下的,你让它变得更难了。 [* 数字显然是编造的]
  • @KelvinMackay:不管怎样,我对一致性和代码约定非常狂热,但我总是坦率地承认,当被问及为什么时,我永远无法给这个问题一个令人信服的答案。这就是我在这里问它的原因。

标签: javascript


【解决方案1】:

您的问题的答案是不,没有共识

【讨论】:

  • +1 我认为没有更正确的答案了。
  • 请指出一个社区风格指南,该指南更喜欢用空格写这个,否则你的答案实际上是不正确的。
  • @MikkoOhtamaa:你不能通过列出三个同意的来源并要求某人找到不同意的来源来证明存在共识。即您不能证明是否定的。 也就是说,您的研究确实表明缺乏空间的方法比我想象的更一致地采用。我会去的。
  • 如果有一个有偏好的社区风格指南,那么他的回答将是不正确的。就目前而言,没有社区风格指南,因此没有达成共识。
【解决方案2】:

我想已经决定了

  • Crockford 没有多余的空间。

  • idomatic.js 没有多余的空间。

  • jQuery 更喜欢没有多余的空间。

感谢elclanrs的指点。

【讨论】:

  • Orbit 中的Lightness Races 无需额外空间
【解决方案3】:

您必须记住一件事,开发代码不是生产代码。继续在你的开发代码中使用额外的空间,但是当你最小化它时,它无论如何都会变成{a:b}

如果您的目标是生成高度可读且一致的代码,那么也许您应该编写一个标准。每个人的做法都略有不同。看看有多少个模块示例。

例如,为什么不这样做?

var objectName = {};
objectName.foo = bar;

还是这个?

var objectName = function(){};
objectName.foo = bar;

【讨论】:

  • 编辑问题:请重新阅读
猜你喜欢
  • 2010-09-16
  • 1970-01-01
  • 2020-10-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-26
  • 1970-01-01
相关资源
最近更新 更多