return 、break 和 continue
return 、break和continue的区别和作用
1.return关键字并不是专门用于跳出循环的,return的功能是结束一个函数方法。return直接结束整个方法,不管这个return处于多少层循环之内。
2.continue的功能和break有点类似,区别是continue只是中止本次循环,接着开始下一次循环。而break则是完全中止循环。
3.break用于完全结束一个循环,跳出循环体。不管是哪种循环,一旦在循环体中遇到break,系统将完全结束循环,开始执行循环之后的代码,break会跳出当前这一层,去执行外一层循环(而不是退出所有层循环)。
break是跳出一层循环,continue是结束一趟循环 ,return才是结束所有层循环!
如果有多层for循环,break会跳出当前这一层,去执行外一层循环(而不是退出所有层循环);而continue则结束当前次循环(继续)而去执行下次循环,但本层循环没有结束.(注意一层循环和一次循环的区别:一层循环包含若干(i)次循环)
foreach不能break
可以使用 es6 for...of -------------具体使用见文档
function* fibonacci() { // 一个生成器函数
let [prev, curr] = [0, 1];
for (;;) { // while (true) {
[prev, curr] = [curr, prev + curr];
yield curr;
}
}
for (let n of fibonacci()) {
console.log(n);
// 当n大于1000时跳出循环
if (n >= 1000)
break;
}