同样的代码我们写了6次,这样是不好的,重复多次时,我们使用循环结构结构
for循环
固定用法
for(初始化表达式 ; 条件表达式 ; 递增或者递减表达式){
循环体(需要重复执行的代码)
}
for(var count = 0;count < 6; count++){
console.log('javascript天下无敌!!!');
}
执行过程
1.先执行初始化表达式
2.判断条件是否成立
3.如果成立,执行循环体
4.执行递增表达式
重复2~4,直到第2步的条件为false,就结束循环
求1~10之间的所有整数和
/*
// 分析过程
// 0 + 1 + 2 + 3 + 4 + 5 + ... + 100
// sum = 0;
// var n = 1;
// sum = sum + n
// n = n + 1;
// sum = sum + n
// n = n + 1;
*/
var sum = 0;
for(var i =1; i<=10;i++){
sum=sum+i;
console.log(sum);
}
while循环
固定语法
while( 条件表达式 ){
当表达式的结果是true的时候,这里面的代码会重复的执行,直到条件为false
循环体(需要重复执行的代码)
}
while(count < 10){
console.log('javascript天下第一!!!');
}
执行过程:
1.先判断条件是否成立
2.如果成立,会执行循环体
3.当循环体执行完毕,会再次判断条件
重复1~3多次,直到条件为false为止
do-while循环
固定写法
do {
循环体(需要重复执行的代码)
}while (条件)
执行过程
1.先执行循环体1次
2.判断条件
3.如果是true,就执行循环体
4.重复2~3多次,直到条件是false
总结
- while、do-while 循环不易看出循环的次数,一般用于未知次数的循环
- for循环明显看出循环的次数,一般用于已知次数的循环
while、for循环可能一次循环都不执行, do-while循环至少执行一次
求1-100之间所有偶数的和
// 0. 设置一个变量,用来做数据的累加初始值
// 1. 先拿到1 到 100之间的所有数字(for循环)
// 2. 过滤出偶数, 如果满足 i %2 == 0, 这个条件成立,则证明这个i是偶数
// 3. 把偶数进行累加
var sum=0;
for(var i=0;i<100;i++){
// 判断余数是否等于余1 获取奇数
if(i%2===1){
sum+=i;
}
}
console.log(sum);
第二种方法
var sum=0;
for(var i =2; i<=100;i=i+2){
sum+=i
}
console.log(sum);
循环的结束语句
某些情况下,我们不一定要循环从头到尾执行,这个时候就要使用break和continue控制循环的次数
break
作用:
1.阻止switch-case结构的继续判断
2.阻止循环的继续执行,然后break之后的代码就不会执行了// break
/*电梯一共有6层,现在我们要上电梯,我们的教室在3楼,电梯只要到3楼就可以了。*/
for(var i = 1; i <= 6 ; i++ ){
console.log('现在是'+i+'楼');
if(i == 3){
console.log('3楼到了,电梯停了,请下电梯。');
break;
}
}
continue
作用:
跳过当前这一次循环,继续执行下一次循环// continue
// 电梯一共有6层,除了3楼没人下去,其他楼层都有人下去(3楼不停,其他楼层都要停)
for(var i = 1; i <= 6; i++){
if(i == 3){
continue;
}
console.log(i+'楼到了,电梯停了,请下电梯。');
}
break用于结束整个循环
- continue用于结束整个循环中的一次
- break和continue后面的代码都不会执行