Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/474.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
正确的JavaScript断线?_Javascript - Fatal编程技术网

正确的JavaScript断线?

正确的JavaScript断线?,javascript,Javascript,分解这样的长布尔表达式 var x = a === b && c === d && e === f; 更具可读性的内容,如 var x = a === b && c === d && e === f; 被认为是坏习惯? 对于长变量名,前者可能会变得非常长。您可以在这样的表达式中随意设置换行符。这并不被认为是一种不好的做法。事实上,保持代码可读性是一种很好的做法,而不需要大量的水平滚动,因此如果需要

分解这样的长布尔表达式

var x = a === b && c === d && e === f;
更具可读性的内容,如

var x = a === b
        && c === d
        && e === f;
被认为是坏习惯?
对于长变量名,前者可能会变得非常长。

您可以在这样的表达式中随意设置换行符。这并不被认为是一种不好的做法。事实上,保持代码可读性是一种很好的做法,而不需要大量的水平滚动,因此如果需要一些换行符,那么建议这样做

许多公司编码风格指南都指定了最大代码行长度,以便于阅读,为了遵循这些类型的指南,需要这样的换行符

请查看Douglas Crockford的javascript约定,甚至谷歌的样式指南,并从中选择引用:

如果可能,所有函数参数都应列在同一个表中 线路。如果这样做将超过80列的限制,则参数 必须以可读的方式换行。为了节省空间,可以换行 尽可能接近80,或者将每个参数放在自己的行中 提高可读性。缩进可以是四个空格,也可以是 与括号对齐

避免线路过长。当一句话不能很好地表达出来时 一条线,可能需要断开它。最好是休息 在{左括号、[左括号](左括号、逗号或之前 a.句号、问号或冒号。如果不允许这样的中断 可行,然后在操作员之后中断,继续下一行 将8个空格添加到当前缩进中。这8个空格不会 更改当前缩进

线路长度

80个字符或更少(用于笔记本电脑并排扩散和两个窗口 瓷砖


您可以在这样的表达式中随意设置换行符。这并不是一种不好的做法。事实上,在不进行大量水平滚动的情况下保持代码可读性是一种很好的做法,因此,如果需要一些换行符,则建议您这样做

许多公司编码风格指南都指定了最大代码行长度,以便于阅读,为了遵循这些类型的指南,需要这样的换行符

请查看Douglas Crockford的javascript约定,甚至谷歌的样式指南,并从中选择引用:

如果可能,所有函数参数都应列在同一个表中 如果这样做将超过80列的限制,则参数 必须以可读的方式换行。为了节省空间,可以换行 尽可能接近80,或者将每个参数放在自己的行中 增强可读性。缩进可以是四个空格,也可以是 与括号对齐

避免过长的行。当语句不适合时 一条线,可能需要断开。最好断开 在{左括号、[左括号](左括号、逗号或之前 a.句号、问号或冒号。如果不允许这样的中断 可行,然后在操作员之后中断,继续下一行 将8个空格添加到当前缩进中。这8个空格不会 更改当前缩进

线路长度

80个字符或更少(用于笔记本电脑并排扩散和两个窗口 瓷砖


在这种情况下,编写一个函数,使其简洁明了。这是因为我们应该隐藏细节,只在一个函数中编写具有相同抽象层的代码(在《干净代码》一书中建议)

所以


一定要给他们起个好名字。

在这种情况下,编写一个函数,使其简洁明了。这是因为我们应该隐藏细节,只在一个函数中编写具有相同抽象层的代码(在《干净的代码》一书中建议)

所以


确保给他们起好名字。

在这种情况下,编写一个函数,使其简洁明了。例如
var x=computeX()
。不同的公司都有样式指南。这取决于您的喜好。我总是将运算符放在行的末尾,以防止解释器在我不需要的地方强制使用分号。阅读:fwiw,我写(和看)在其他语言中,这种风格一直存在:java、perl、c。请注意,我还没有编写足够的javascript来在实际答案中表达这一点,所以只需一条注释。在这种情况下,编写一个函数,使其简洁明了。如
var x=computeX()
。不同的公司都有样式指南。这取决于您的喜好。我总是将运算符放在行的末尾,以防止解释器在我不需要的地方强制使用分号。阅读:fwiw,我写(和看)这种风格在其他语言中一直存在:java、perl、c。请注意,我还没有编写足够的javascript来在实际答案中表达这一点,所以只需要一条注释。请注意,如果您试图优化代码,您不想这样做,但这正是UglifyJS的目的:)一般来说,没有理由将这样简单的东西放入代码中只调用过一次的函数中。内联表达式没有问题。这个函数实际上并没有使代码更易于阅读。同样的布尔逻辑表达式必须以任何方式理解。@jfriend00我不同意。只要你说出一些东西就行了从语义上讲,这确实使代码更易于阅读,例如,像这样的函数可以被称为
doesRequireUserField()之类的函数
,而如何确定该值的细节可能是实现不必知道的。@zakangelle-欢迎你的意见。我有不同的意见。如果代码太多,以至于无法理解函数的复杂性,我倾向于将一次性使用的东西放到函数中函数。如果我找到
var x = computeX();
...
function computeX() {
  var logic1 = (a === b);
  var logic2 = (c === d);
  var logic3 = (e === f);
  return logic1 && logic2 && logic3;
}