Disallow unused labels
The "extends": "eslint:recommended"
property in a configuration file enables this rule
Some problems reported by this rule are automatically fixable by the --fix
command line option
Labels that are declared and not used anywhere in the code are most likely an error due to incomplete refactoring.
OUTER_LOOP:
for (const student of students) {
if (checkScores(student.scores)) {
continue;
}
doSomething(student);
}
In this case, probably removing OUTER_LOOP:
had been forgotten. Such labels take up space in the code and can lead to confusion by readers.
This rule is aimed at eliminating unused labels.
Examples of incorrect code for this rule:
/*eslint no-unused-labels: "error"*/
A: var foo = 0;
B: {
foo();
}
C:
for (let i = 0; i < 10; ++i) {
foo();
}
Examples of correct code for this rule:
/*eslint no-unused-labels: "error"*/
A: {
if (foo()) {
break A;
}
bar();
}
B:
for (let i = 0; i < 10; ++i) {
if (foo()) {
break B;
}
bar();
}
If you don’t want to be notified about unused labels, then it’s safe to disable this rule.
This rule was introduced in ESLint v2.0.0-rc.0.
© OpenJS Foundation and other contributors
Licensed under the MIT License.
https://eslint.org/docs/latest/rules/no-unused-labels