作为一名学习JavaScript的c#编码器,我觉得这很可读:
$(this)
.first()
.prepend("<h3>Title</h3>")
.end()
.removeClass("hidden");
比这个:
$(this).first().prepend("<h3>Title</h3>").end().removeClass("hidden");
然而JSLint抱怨第一个。但我不明白为什么。这会让我在任何地方遇到麻烦吗?
更新 您可以在jslint页面的底部设置缩进值,从而使代码“有效”。有一个JsLint的分支http://www.jshint.com/,它也接受标签。
答案 0 :(得分:3)
jsLint上代码的问题是由于标识:如果你用4个空格缩进它就没有错误
(如果默认值不是您想要的话,向下滚动到选项并更改标识设置)
答案 1 :(得分:1)
JSLint的警告是一个品味问题。无论是谁写的都发现用这种方式排列东西更有意义:
$(this).
first().
prepend("<h3>Title</h3>").
end().
removeClass("hidden");
我一个人发现你的方法更加清晰,因为点告诉我,它之后的任何东西都属于上面的那一行。
你对写作的方式很安全,但我真的很想看到有人(jslint开发者)告诉我们如何禁用该信息。
答案 2 :(得分:0)
你的代码非常好,如果你像jslint那样格式化它不应该抱怨(好吧,当然它抱怨$
没有被定义,但其余的代码都没问题)
$(this).
first().
prepend("<h3>Title</h3>").
end().
removeClass("hidden");
答案 3 :(得分:0)
良好的编码习惯是让您和其他任何人保持您的代码可读,这就是一个例子
$(this).first()
.prepend("<h3>Title</h3>")
.end()
.removeClass("hidden");
if(something)
{
// do something
}
else
{
//do something else
}
你应该总是使用缩进,这是一个很好的编码实践。