return break 和continue在for循环中的不同作用

时间:2023-03-09 16:20:57
return break 和continue在for循环中的不同作用
平时自己经常在函数里见到return,在switch语句中使用break,而continue则用的不多。
其实这三者都能在for循环中发挥不同的作用,让代码更加灵活。

先说return

return是结束被调函数的执行,结束时候可以return返回值,并且return之后的语句不再执行

如下代码示例:

function fun(){
for (let i = 0; i < 9; i++) {
if(i==5){
return;
console.log('哈哈哈');
}
console.log(i);
}
console.log('星河滚烫');
} fun();
//log: 0 1 2 3 4

可以看出i==5就结束了,而且在return之后的'哈哈哈',没有打印,i=5也没有打印出来,‘星河滚烫’也没有打印,

return是直接跳出了该函数

再说break

break会终止并跳出它所在的循环,进入下一段程序的执行(如果多层循环嵌套,它只跳出自己的这一层循环)

如下代码示例:

function fun(){
for (let i = 0; i < 9; i++) {
if(i==5){
break;
console.log('哈哈哈');
}
console.log(i);
}
console.log('星河滚烫');
} fun();
//log: 0 1 2 3 4 星河滚烫

可以看出i==5时,break结束了循环,并且跳出循环打印了 '星河滚烫'

最后说一下continue

continue会使循环进行到此处时,直接进入下一次循环的入口处 执行下一次循环,注意不是结束循环体。

如下代码示例:

function fun(){
for (let i = 0; i < 9; i++) {
if(i==5){
continue;
console.log('哈哈哈');
}
console.log(i);
}
console.log('星河滚烫');
} fun();
//log: 0 1 2 3 4 6 7 8 9 星河滚烫

只有 5 没有打印,而之后的都打印了出来,说明i==5时后面的都没有执行,直接进入到了之后的循环

总结:

break跳出并结束当前循环体(自己这一层)

continue:此次循环结束,进入下次循环

return: 结束当前函数,进入主调函数继续执行,return后面的代码不再执行;return后可以返回参数。