规则名 | 规则类型 | 关联规则 | |
---|---|---|---|
no-empty |
suggestion |
|
Empty block statements, while not technically errors, usually occur due to refactoring that wasn't completed. They can cause confusion when reading code.
This rule disallows empty block statements. This rule ignores block statements which contain a comment (for example, in an empty catch
or finally
block of a try
statement to indicate that execution should continue regardless of errors).
此规则的 错误 代码实例:
/*eslint no-empty: "error"*/
if (foo) {
}
while (foo) {
}
switch(foo) {
}
try {
doSomething();
} catch(ex) {
} finally {
}
此规则的 正确 代码实例:
::: correct
/*eslint no-empty: "error"*/
if (foo) {
// empty
}
while (foo) {
/* empty */
}
try {
doSomething();
} catch (ex) {
// continue regardless of error
}
try {
doSomething();
} finally {
/* continue regardless of error */
}
This rule has an object option for exceptions:
"allowEmptyCatch": true
allows emptycatch
clauses (that is, which do not contain a comment)
Examples of additional correct code for this rule with the { "allowEmptyCatch": true }
option:
::: correct
/* eslint no-empty: ["error", { "allowEmptyCatch": true }] */
try {
doSomething();
} catch (ex) {}
try {
doSomething();
}
catch (ex) {}
finally {
/* continue regardless of error */
}
If you intentionally use empty block statements then you can disable this rule.