noUselessCatch
Este conteúdo não está disponível em sua língua ainda.
Diagnostic Category: lint/complexity/noUselessCatch
Since: v1.0.0
Sources:
- Same as:
no-useless-catch
Description
Section titled DescriptionDisallow unnecessary catch
clauses.
A catch
clause that only rethrows the original error is redundant,
and has no effect on the runtime behavior of the program.
These redundant clauses can be a source of confusion and code bloat,
so it’s better to disallow these unnecessary catch
clauses.
Examples
Section titled ExamplesInvalid
Section titled Invalidtry { doSomething();} catch(e) { throw e;}
code-block.js:4:5 lint/complexity/noUselessCatch ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
✖ The catch clause that only rethrows the original error is useless.
2 │ doSomething();
3 │ } catch(e) {
> 4 │ throw e;
│ ^^^^^^^^
5 │ }
6 │
ℹ An unnecessary catch clause can be confusing.
try { doSomething();} catch(e) { throw e;} finally { doCleanUp();}
code-block.js:4:5 lint/complexity/noUselessCatch FIXABLE ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
✖ The catch clause that only rethrows the original error is useless.
2 │ doSomething();
3 │ } catch(e) {
> 4 │ throw e;
│ ^^^^^^^^
5 │ } finally {
6 │ doCleanUp();
ℹ An unnecessary catch clause can be confusing.
ℹ Unsafe fix: Remove the catch clause.
1 1 │ try {
2 2 │ doSomething();
3 │ - }·catch(e)·{
4 │ - ····throw·e;
5 │ - }·finally·{
3 │ + }·finally·{
6 4 │ doCleanUp();
7 5 │ }
Valid
Section titled Validtry { doSomething();} catch(e) { doSomethingWhenCatch(); throw e;}
try { doSomething();} catch(e) { handleError(e);}
try { doSomething();} finally { doCleanUp();}
How to configure
Section titled How to configure{ "linter": { "rules": { "complexity": { "noUselessCatch": "error" } } }}