一、while循环
while语法结构
语法: while(限制条件){满足条件执行的循环体(代码块)}
var i = 1; //初始值 执行一次
while (i <= 10) { //限制条件
console.log('循环体'); //满足条件执行的循环体
i++; //改变值,继续下一次循环,跳转到 while (i <= 10) 继续判断,知道条件不满足才结束循环
}
console.log(i); //11 循环结束的值
案例1:累加
统计1+2+3+…+10 = 55
var sum = 0;
var i = 1;
while (i <= 10) { //i=11,循环体结束了,不再执行了
sum += i; //sum = sum + i; //迭代,累加
i++; //i:1->10
}
console.log(sum); //55
console.log(i); //11
案例2:输出100个标签
输出100个li
var i = 1;
while (i <= 100) {
document.write('<li>' + i + '</li>');
i++;
}
案例3:循环执行if语句
输出1-100之间能同时被3和7整除的数字。
var i = 1;
while (i <= 100) {
//条件
if (i % 3 === 0 && i % 7 === 0) {
document.write(i + ',');
}
i++;
}
while循环的嵌套
循环嵌套的描述:外层循环一次,里面的存在的循环全部完成一次
// 第一层循环
var i = 1;
while (i <= 10) {
document.write('我是外层循环' + i + '<br>');
i++;
// 第二层循环全部循环完成一次
var j = 1;
while (j <= 10) {
document.write('  我是内层循环' + j + '<br>');
j++
}
}
案例1:绘制表格
document.write('<table border=1>');
// 循环绘制tr
var i = 1; //初始,执行一次
while (i <= 10) {
document.write('<tr>');
// 循环绘制td
var j = 1; //注意:必须放到循环体中,每次从1开始的
while (j <= 10) {
document.write('<td>1111111</td>');
j++;
}
document.write('</tr>');
i++;
}
document.write('</table>');
案例2:绘制九九乘法表
document.write('<table border=1>');
var i = 1;
while (i <= 9) { //i:1-->9
document.write('<tr>');
var j = 1;
while (j <= i) { //重点区域:i确定第几行,j刚好和i有一个关联,就是i第几行,j循环几次 j:1-->9
document.write('<td>' + j + 'x' + i + '=' + (i * j) + '</td>');
j++;
}
document.write('</tr>');
i++;
}
document.write('</table>');
二、do…while循环
是一个和while循环类似的循环
while会先进行条件判断,满足就执行,不满足直接就不执行了
特点:do while循环是,先不管条件,先执行一回,然后在开始进行条件判断
语法:do { 循环体 }while(条件)
var i = 10;
while (i > 10) {
console.log('while循环体执行了');
}
var j = 10;
do {
console.log('dowhile循环体执行了');
} while (j > 10);
var i = 1;
while (i <= 10) {
console.log(i);
i++;
}
var i = 1;
do {
console.log(i);
i++;
} while (i <= 10);
总结:
- 条件满足的情况下,while和do…while是一致的.
- 条件不满足的情况下,do…while…至少执行一次,while有可能一次都不执行。