重点--break 和 contiune
2019-06-22 本文已影响0人
潘肚饿兵哥哥
如果需要执行10次循环,那么加了continue之后就只执行了9次,
<script>
//continue 关键字
for(var i = 1; i <= 5; i++){
if(i == 3){
continue;
}
console.log('我正在吃第' + i + '个包子');
}
</script>

<script>
var sum = 0;
for(var i = 1; i <= 100; i++){
if(i % 7 == 0){
continue;
}
sum += i;
}
console.log(sum);
</script>

<script>
//break关键字:直接退出整个循环
for(var i = 1; i <= 5; i++){
if(i == 3){
break;
}
console.log('我吃了' + i + '个包子');
}
</script>

for(var i=0; i<5; i++){
console.log("---"+i)
for(var j=0; j<5; j++){
break;
console.log("-"+j);
}
}
break只会退出离他 最近 的循环
不会影响外层的循环

这个outer就是一个自己创建的lable,
用(break 空格 lable )来退出指定循环,而且不会退出离break最近的循环
outer:
for(var i=0 ; i<5 ; i++){
console.log("@外层循环"+i)
for(var j=0 ; j<5; j++){
break outer;
console.log("内层循环:"+j);
}
}
for(var i=0 ; i<5 ; i++){
console.log(i);
if(i == 2){
break;
}
}
continue关键字可以用来跳过当次循环
同样continue也是默认只会对离他最近的循环起作用
for(var i=0 ; i<5 ; i++){
if(i==2){
continue;
}
console.log(i);
}

continue的lable也只会跳出指定循环的当次循环
outer:
for(var i=0 ; i<5 ; i++){
for(var j=0 ; j<5 ; j++){
continue outer;
console.log("-->"+j);
}
console.log("@--->"+i);
}
<script>
//循环完结练习:
//1.求1-100之间所有数的总和与平均值
var sum = 0;
for (var i = 1; i <= 100; i++) {
sum += i;
}
console.log(sum);
console.log(sum / 100);
</script>

var num = 0;
for (var i = 1; i <= 100; i++) {
if (i % 2 !== 0) {
continue;
}
num += i;
}
console.log(num);

var num = 0;
for (i = 1; i <= 100; i++) {
if (i % 7 != 0) {
continue;
}
num += i;
}
console.log(num);

var star = '';
for (i = 1; i <= 5; i++) {
for (j = 1; j <= 5; j++) {
star += '☆';
}
star += '\n';
}
console.log(star);

//使用for循环打印5行5列的五角星
var star = '';
for (i = 1; i <= 5; i++) {
for (j = i; j <= 5; j++) {
star += '☆';
}
star += '\n';
}
console.log(star);
var star = '';
for (i = 1; i <= 5; i++) {
for (j = 1; j <= i; j++) {
star += '☆';
}
star += '\n';
}
console.log(star);

