for循环
for(定义初始变量;循环条件;变量变化){
循环语句块
}
注: 变量初始化 在进入循环前执行一次, 条件是每次进入循环之前都会执行并且判断,括号里的三个部分必须用分号隔开
说明:for 循环的第三个部分是每次循环完成语句块后执行的内容;for 循环三个部分 第二个条件部分不能使用逗号分隔多个条件,只能使用逻辑与&&,逻辑或||; 其他两个部分都可以使用逗号来分隔多个语句内容。
for 循环三个部分 第一个和第二个部分能使用逗号分隔多个语句
for(i=0,sum=0;i<100;sun++,i++){
}
for 循环三个部分 第二个条件部分不能使用逗号分隔多个条件,只能使用逻辑与&&,逻辑或||
for(i=0,sum=0;i>0 && i<100;sun++,i++){
}
for(i=0,sum=0;i<20 || i>100;sun++,i++){
}
用for循环计算从1到100的和
for(var i=1,sum=0;i<=100;i++){ //设置变量i=1,sum=0;再设置循环条件为i<=100;最后定义变量的变化
sum+=i; //设置i每循环一次sum值都为sum+=i;
}
console.log("从1 到100的和为"+sum); //打印sum的结果
结果如图:
如果没有条件语句,默认可以直接进入语句块,无限循环
例:
for(var i=0;;i++){
console.log(i);
}
for循环内可以使用break和continue
***break 和continue的区别是:break为跳出循环,不再进入循环;continue为跳出本次循环,继续下次循环。
使用break为跳出循环,不再进入循环
for(var i=0;i<8;i++){
if(i===5) break; //当i=5时,就跳出当前for循环
console.log(i);
}
如图:
使用continue为跳出本次循环,继续下次循环
for(var i=0;i<8;i++){
if(i===5) continue; //当i=5时,就跳出本次循环
console.log(i);
}
如图:
for循环嵌套 ;for循环中可嵌套多个for循环
制作等腰三角形
var str = "";
for (i = 1; i < 10; i++) {
for (m = 10; m > i; m--) {
str += " ";
}
for (j = 0; j < i; j++) {
str += "* ";
}
str+="<br>";
}
document.write(str);
效果如图:
求100以内的质数的和
var s = 0;
for (num = 2; num < 100; num++) {
var j = 1;
for (i = 2; i < num; i++) {
if (num % i === 0) {
j = 0;
break;
}
}
if (j === 1) s += num;
}
console.log(s);
效果如图: