The Javascript uncaught SyntaxError: Undefined label <<label name here>>
might happen because one of the following reasons.
1. No other code is allowed the label declaration and its loop
The label name needs to come right after its corresponding loop. No other code is allowed between the label declaration and its loop:
// ⛔️ this will throw:
// uncaught SyntaxError: Undefined label myLabel
myLabel:
console.log('something)
for (let i = 0; i < 5; i++) { ... }
// ✅ this will work
myLabel:
for (let i = 0; i < 5; i++) { ... }
2. Label must be declared prior to its usssage
The label must be declared BEFORE using it with a break or a continue statement:
// ⛔️ this will throw:
// uncaught SyntaxError: Undefined label myLabel
for (let i = 0; i < 5; i++) {
if(i === 1) break myLabel;
}
myLabel:
// ✅ this will work
myLabel:
for (let i = 0; i < 5; i++) {
if(i === 1) break myLabel;
}
Javascript labels are not meant to work as a goto statement and can be used only with prior defined simple or nested loops.
📖 50 Javascript, React and NextJs Projects
Learn by doing with this FREE ebook! Not sure what to build? Dive in with 50 projects with project briefs and wireframes! Choose from 8 project categories and get started right away.
📖 50 Javascript, React and NextJs Projects
Learn by doing with this FREE ebook! Not sure what to build? Dive in with 50 projects with project briefs and wireframes! Choose from 8 project categories and get started right away.