は以下のjsLintは
for(var i=0; i< data.cats.length; i++) list += buildCategories(data.cats[i]);
jsLintが
Expected '{' and instead saw 'list'.
が短く表記を使用しての代わりに、中括弧をそれそれをラップする実際の欠点があります私に語っ考えると{期待しますか?
は以下のjsLintは
for(var i=0; i< data.cats.length; i++) list += buildCategories(data.cats[i]);
jsLintが
Expected '{' and instead saw 'list'.
が短く表記を使用しての代わりに、中括弧をそれそれをラップする実際の欠点があります私に語っ考えると{期待しますか?
これは防御的プログラミングです。中括弧を使用すると、for
に関連付けられることを意図したステートメントが明確に定義されます。
中括弧を使用しない場合、後でlist += buildCategories...
の下に別の文を追加して、for
ループでも実行されることを期待する可能性があります。
JSLintは、次の優れたコードスタイルをチェックします。中括弧を挿入するのは、コードがどこに属しているかが分かりやすいため、常に良いスタイルです。とにかくそれを処理するのは、ほとんどのminifierがそうしているからです。
「短い表記法を使用しての実際の欠点があります...」
それはあなたのコーディングについて慎重にいないのであれば、バグの原因になるが、それらを省略して提供してより洗練されたコードのIMOであり、一貫性があり、よく考えられたプログラミング標準に準拠していれば、省略しても問題はありません。
例えば、中括弧if/else
の中括弧を除外するステートメントがある場合、中括弧を使用してelse
の平衡を取ることをお勧めします。誰かの物事は、彼らがif
またはelse
に別のステートメントを追加することができた場合
if (condition)
if (condition2)
inner_if()
else ;
else
outer_if()
このコードは... IMOまだ
if (condition) {
if (condition2) {
inner_if();
}
} else {
outer_if();
}
これよりもきれいで、それは修正する必要が理解の問題です。
実際には、どのような標準が使用されるのかというだけの問題です。中括弧を利用することは確かに一つの有効な選択肢ですが、あまりにも独断的ではありません。あなたが複数の構成ツールが必要な場合
、あなたの代わりにjsHint.comを検討することができます。
なぜCW ????? –
@AdamRackis:私の答えはすべてCWになりました。私はちょうどそのようにそれが好きだと思う。 –
repラットレースに疲れましたか? :) –
もしあなたがそのチェックをしたくないのであれば、単に "curly"を指定してヒンティングの設定を変更してください:false、 ' –