break
break :终止break的整个循环体,包括内部所有循环。但对循环体外部的循环不影响。
for(let i = 0;i<2;i++){
for(let j = 0;j<2;j++){
if(j === 1){
break; //退出break所在层循环
}
console.log('j ='+j);
}
}
//执行结果为:打印2次 j=0
continue
continue:不会终止整个循环,而是终止本次迭代,遇到 continue 直接放弃执行continue之后的代码,直接进入下一次迭代(i+1)
for(let i = 0;i<2;i++){
for(let j = 0;j<2;j++){
if(j === 1){
continue; //终止 continue 所在循环的本次迭代,执行 j+1 的迭代
}
console.log('j ='+j);
}
}
//执行结果为:打印2次j=0;
return
return :用于指定函数的返回值,return 只能出现在函数内部。遇到return即终止函数内所有代码执行,包括循环,直接退出整个函数。
function testReturn (){
for(let i = 0;i<2;i++){
for(let j = 0;j<2;j++){
if(j === 1){
return j; //终止整个函数体内代码执行,函数返回值为 1
}
console.log('j ='+j);
}
}
}
console.log("函数的返回结果为:"+testReturn());
//执行结果为:打印 1次 j =0; 打印一次 函数的返回结果为1
如果在非函数内使用 return;
执行结果Uncaught SyntaxError: illegal return statement(...)
错误意思是非法捕获的查询返回语句。
当执行return语句时, 即使函数主题中还有其他语句, 函数执行也会停止!
总结:break 和 continue 为循环体内部使用,break 退出 当前循环以及当前循环内部所有循环,continue 是退出 当前循环的当前次迭代,开始下一次迭代。return 为函数返回值,终止整个函数执行。