It\'s well-known that break and continue can be used inside a loop:
The answer is different for break (yes) and continue (no).
breakYou can use break in an if, yes, if you label the if. I wouldn't, but you can:
foo: if (true) {
console.log("In if before break");
break foo;
console.log("In if after break");
}
console.log("After if");
That outputs
In if before break After if
This isn't specific to if. You can label any statement, and for those with some kind of body (loops, switch, if, try, with, block, ...), you can use break within the body to break out of it. For instance, here's an example breaking out of a block statement:
foo: {
console.log("In block before break");
break foo;
console.log("In block after break");
}
console.log("After block");
In block before break After block
continueYou can't use continue with if (not even a labelled one) because if isn't an iteration statement; from the spec.
It is a Syntax Error if this ContinueStatement is not nested, directly or indirectly (but not crossing function boundaries), within an IterationStatement.
Normally you can't. You can only use return; to discontinue code execution in an if statement.
Using break;
if (true) {
break;
}
console.log(1)
Using continue;
if (true) {
continue;
}
console.log(1)