循环结构:根据某些给出的条件,重复的执行同一段代码。
循环嵌套:就是在一个循环里面再写一个循环。
固定内容:初始化变量、条件判断、要重复执行的代码、改变初始化变量。
注意:循环要有尽头,不能无穷无尽的重复执行。我们写的时候一定要设定一个边界值,并且改变自身(初始化变量),不然就会陷入死循环。
说明:当…时,当条件满足时就执行代码,一旦不满足了就不执行了。
语法:while (条件) { 要重复执行的代码 }
注意:如果第一次的条件判断都不满足,那么就一次都不执行。
例:在控制台打印1-5的数字
// 得到一组有规律的数字
var i = 1;
while (i <= 5) {
console.log(i);
i++;
}
do…while循环
说明:和 while 循环基本一致,但是do…while是不管条件先执行一次,然后才开始进行条件判断。
语法:do { 重复执行的代码 } while (条件)
注意:先不管条件执行一次,即使不满足条件也执行。
例:下面这段代码的结果就是100,如果var i = 1; 那么结果就是1-10的数字
var i = 100;
do {
console.log(i);
i++;
}
while (i <= 10)
for循环
说明:如果条件满足时就执行代码,一旦不满足了就不执行了。
语法:
a、 for ( 初始化; 条件判断; 自身改变 ) { 重复执行的代码 }
for (var i = 1; i <= 10; ++i) {
// 要重复执行的代码
console.log(i)
}
b、 for 循环语法的第二种形式
var i = 0 // 1. 初始化
for (; i <= 10; ) { // 2. 条件判断
console.log('我执行了') // 3. 重复执行代码
i++ // 4. 改变初始化
}
注意:初始化, 条件判断, 和自身改变之间使用 分号 分隔
例: 找出 100 ~ 999 之间所有的水仙花数
for (var i = 100; i <= 999; i++) {
var a = parseInt(i / 100)
var b = parseInt(i % 100 / 10)
var c = i % 10
var result = a * a * a + b * b * b + c * c * c
if (result === i) {
console.log(i + ' 是一个水仙花数字')
}
}
循环语句的控制:
break 终止循环
说明:在循环里面执行到break,就直接打断循环,跳到循环外面。
语法:break ;
例:结果为1,2,3,4,5
for (var i = 1; i <= 10; i++) {
console.log(i)
if (i == 5) {
break;
}
}
continue 结束本次循环
说明:在循环里面,跳过本次循环,继续下一次循环。
语法:continue ;
例:结果为1,2,3,4,6,7,8,9,10
for (var i = 1; i <= 10; i++) {
if (i === 5) {
continue;
}
console.log(i) //结果为1,2,3,4,6,7,8,9,10
}