Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.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/JQuery代码吗?_Javascript_Jquery_Coding Style_Jslint - Fatal编程技术网

我可以用换行符和制表符格式化JavaScript/JQuery代码吗?

我可以用换行符和制表符格式化JavaScript/JQuery代码吗?,javascript,jquery,coding-style,jslint,Javascript,Jquery,Coding Style,Jslint,作为一名学习JavaScript的c#程序员,我发现以下内容更具可读性: $(this) .first() .prepend("<h3>Title</h3>") .end() .removeClass("hidden"); $(此) .first() .prepend(“标题”) (完) .removeClass(“隐藏”); 除此之外: $(this).first().prepend("<h3>Title</h3>").end

作为一名学习JavaScript的c#程序员,我发现以下内容更具可读性:

$(this)
  .first()
  .prepend("<h3>Title</h3>")
  .end()
  .removeClass("hidden");
$(此)
.first()
.prepend(“标题”)
(完)
.removeClass(“隐藏”);
除此之外:

$(this).first().prepend("<h3>Title</h3>").end().removeClass("hidden");
$(this.first().prepend(“Title”).end().removeClass(“hidden”);
然而,JSLint抱怨第一个问题。但我不明白为什么。这会给我带来麻烦吗

更新:
您可以在jslint页面的底部设置缩进值,从而使代码“有效”。JsLint有一个分支,它也接受制表符。

如果您像这样格式化代码,那么您的代码是非常好的。JsLint不应该抱怨(当然,它抱怨没有定义
$
,但是代码的其余部分还可以)

$(这个)。
首先()。
前置(“标题”)。
end()。
removeClass(“隐藏”);

jsLint上的代码问题是由于标识:如果用4个空格缩进,则没有错误


(如果默认值不是您想要的,请向下滚动到选项并更改标识设置)

来自JSLint的警告是一个味道问题。无论是谁写的,都发现这样安排更有意义:

$(this).
  first().
  prepend("<h3>Title</h3>").
  end().
  removeClass("hidden");
$(这个)。
首先()。
前置(“标题”)。
end()。
removeClass(“隐藏”);
我个人觉得你的方法更清楚,因为圆点告诉我,它后面的任何东西都属于上面这条线


你的写作方式是安全的,但我真的希望看到有人(jslint开发者)告诉我们如何禁用该消息。

一个好的编码实践是让你和其他人都能阅读你的代码,这就是一个例子

$(this).first()
.prepend("<h3>Title</h3>")
.end()
.removeClass("hidden");

if(something)
{
   // do something
}
else
{
   //do something else
}
$(this).first()
.prepend(“标题”)
(完)
.removeClass(“隐藏”);
如果(某物)
{
//做点什么
}
其他的
{
//做点别的
}

您应该始终使用缩进,这是一种很好的编码实践。

为什么上一个元素和点之间的空格作为旁注,为什么要使用
$(this)。first()
?如果
this
是一个元素,
$(this)
只包含一个元素。我通常像上面的示例那样编写代码,以使其更易于阅读,而且我从来没有遇到过任何问题:)看看答案,我可能错了,但是javascript的自动分号插入不会在
$的末尾插入分号(这)
从而使代码的其余部分成为语法错误?没有语法错误。问题如上文所述:itentifier.nextidentifier查看jslint页面的底部:在jslint页面的底部,您至少可以设置允许缩进的空格数。是的,我阅读了其他答案。很高兴知道,但我使用标签。我设法在jslint的源代码中找到了这个特定的错误,但无法禁用它。也许我应该对此提出一个功能要求,因为我如何缩进我的行实际上与他们无关。毕竟,它不是python!我错了吗?此外,我使用二进制jslint,错误出现在我的文本编辑器中。
$(this).first()
.prepend("<h3>Title</h3>")
.end()
.removeClass("hidden");

if(something)
{
   // do something
}
else
{
   //do something else
}