0

我正在开发 JavaScript 样式指南,并且我知道可以应用于代码约定的唯一规则是保持一致,但我对这个问题很好奇,因为没有一个主要框架使用这个约定。

声明对象/变量时,冒号/等号垂直对齐的优缺点是什么?

var a   = 1,
    ab  = 2,
    abc = 3;

var obj = {
    a   : 1,
    ab  : 2,
    abc : 3
};
4

3 回答 3

2

更好的代码可读性。就是这样。

缺点是使用 find 来查找变量的值时,因为空格比需要的多。variablename =因此,由于它实际上被定义为 ,因此搜索可能不会产生任何结果variablename[space][space][space]=

于 2013-03-05T18:12:06.310 回答
0

当您再次阅读(或其他人阅读)时,将每个变量放在单独的行上将使您受益,因为很明显这些是不同的变量,因此提高可读性是主要因素。

从长远来看,主要是当将代码传递给其他程序员以维护或修改某些内容时,或者如果您在很长一段时间后重新使用它并且不记得代码时,它会带来好处。

在大多数语言中都是一样的。

此外,将变量与彼此(和值)对齐可以使代码看起来非常整洁,但这样做很麻烦,而且大多数人不这样做。您将对齐行的开头,但之后不会对齐其他任何内容。

想象一下,如果某些事情发生了变化并且您必须重新调整所有内容,将会发生什么。

不好。浪费时间可以花在编程上。

于 2013-03-05T18:15:26.697 回答
0

在代码中搜索将是一个明显的缺点:

想象一下我继承了你的系统,或者必须在它上面工作。在这个过程中,我需要弄清楚a变量是什么。该系统有一个包含很多行的庞大代码库,因此不能简单地滚动浏览每一行。

如果代码标准是variable = 123,那么我可以简单地为variable[SPACE]=[SPACE].

这是您发布的标准可能不是一个好主意的地方。我不知道变量名和等号之间会有多少空格。当然,我可以搜索a[SPACE]=,a[SPACE][SPACE]=a[SPACE][SPACE][SPACE]=,但这会更难。

搜索声明的唯一方法(在没有“查找声明”助手的原始代码编辑器中)是对variable\s+=(一个或多个空格)或variable\s*=(零个或多个空格)进行正则表达式搜索,这将花费更长的时间和需要具有正则表达式搜索功能的编辑器。

于 2013-03-05T18:16:44.867 回答