-2

私の JavaScript では、次の例のように、特定の条件が満たされない場合に関数を早期に終了させたいと考えています。

(function () {
  var something = false

  if (!something) return

  doMoreStuff()
}())

好みに合わせてセミコロンを省略していますが、問題なく動作します (上記のスニペットは期待どおりに動作します)。

JSHint でエラーが発生し続けますLine breaking error 'return'。これは、return ステートメントの後にセミコロンを含めることで修正できますが、スクリプトからセミコロンを除外したいと思います。

セミコロンなしで行末に空のリターンを許可するように設定できるオプションはありますか?

4

2 に答える 2

3

セミコロンなしで行末に空のリターンを許可するように設定できるオプションはありますか?

いいえ、ありません。ステートメントを処理するための JSHintコードreturnは次のとおりです。

stmt("return", function () {
    if (this.line === state.tokens.next.line) {
        //...   
    } else {
        nolinebreak(this); // always warn (Line breaking error)
    }
    // ...
})

returnステートメントの後にセミコロンまたは値がない場合else、常に条件に入り、常に警告します。

于 2013-05-16T09:23:01.557 に答える
1

return nullまたはを使用する必要があるかもしれませんreturn undefined

于 2013-05-16T09:25:04.207 に答える