useWhile
Summary
Section titled Summary- Rule available since:
v1.0.0
- Diagnostic Category:
lint/complexity/useWhile
- This rule has a safe fix.
- The default severity of this rule is warning.
- Sources:
- Same as
sonarjs/prefer-while
- Same as
Description
Section titled DescriptionEnforce the use of while
loops instead of for
loops when the initializer and update expressions are not needed.
Examples
Section titled ExamplesInvalid
Section titled Invalidfor (; x.running;) { x.step();}
code-block.js:1:1 lint/complexity/useWhile FIXABLE ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚠ Use a while loop instead of a for loop.
> 1 │ for (; x.running;) {
│ ^^^^^^^^^^^^^^^^^^
2 │ x.step();
3 │ }
ℹ Prefer a while loop over a for loop without initialization and update.
ℹ Safe fix: Use a while loop.
1 │ - for·(;·x.running;)·{
1 │ + while·(x.running)·{
2 2 │ x.step();
3 3 │ }
Valid
Section titled Validfor(let x = 0; x < 10; i++) {}
let x = 0for(; x < 10; i++) {}
for(let x = 0; x < 10;) { i++}
How to configure
Section titled How to configure{ "linter": { "rules": { "complexity": { "useWhile": "error" } } }}