break, continue 和 return 的用法及区别
return:是函数返回语句,返回的同时函数也会停止执行。
break:语句会跳出循环,但是会继续执行循环之后的代码(跳出循环)。
continue:语句会跳过当前迭代,进入下一个迭代。
下面来看一个实际的例子:
function foo() {for(let i = 0; i < 5; i++) {if(i == 0) {continue; // ①}console.log(i);}console.log('foo result');}foo();
将 ① 处的代码 分别使用 return, break, continue, 运行结果如下:
- 使用
return, 什么都不打印 - 使用
break, 打印foo result - 使用
continue, 打印1,2,3,4,foo result。
当你需要在你的代码里进行一些异常判断的时候,你可以使用 return 直接返回错误信息,这样 foo函数就会停止执行,都不会执行foo函数剩下的语句。
当你只是需要 foo 函数中,出现异常的时候(或者满足某个条件的时候),停止执行循环语句,即跳出循环,接着执行 foo 函数剩下的语句,则此时需要使用 break。
当你只是需要 foo 函数中,出现异常的时候(或者满足某个条件的时候),跳出该次循环(比如上述例子中的 i === 0 ),接着执行 下一次循环,则此时需要使用 continue。
