*for循环
while循环
do…while…循环
break/continue关键字
for循环
问题:
1 for(){}结构中()内的三句代码分别起什么作用?循环变量初始化 循环条件 操作表达式
2 执行顺序如何?分别会执行几次? 变量初始化(执行一次)->循环条件(多次)->循环体(多次)->操作表达式(多次)
3 {}内的代码会执行几次?由循环变量初始值、循环条件、操作表达式共同决定
for循环执行过程
for(循环变量初始化;条件表达式;循环变量更新表达式){
循环体
}
其他语句;
执行步骤:
1 循环变量初始化 如var i=1;
2 条件表达式 如i<=10;
3 当条件表达式为true时执行循环体,为false时跳出循环执行其他语句
4 当条件表达式为true且循环体执行完毕后 执行循环变量更新表达式 如 i++
重复执行 2 3 4
举例
for(var i=1;i<=3;i++){
console.log(i)
}
1 变量初始化 var i=1;
2 执行i<=3 此时为true
3 执行循环体 输出1
4 执行i++ i变成2
2 执行i<=3 此时仍为true
3 执行循环体 输出2
4 执行i++ i变成3
2 执行i<=3 此时仍为true
3 执行循环体 输出3
4 执行i++ i变成4
2 执行i<=3 此时为false,跳出(结束)循环
// 通过断点调试分析代码执行过程
f12或点击右键检查打开调试工具->Sources->找到js代码点击行号设置断点->刷新->f11或f9单步调试->鼠标光标移到代码中变量上或在watch中添加变量查看变量的值(若每一步各个变量的值都符合预期则程序最终的结果肯定是对的)
多重for循环
问题:
1 内循环可视为外循环的循环体么? 是的
2 外循环执行一次,内循环执行多少次?外循环执行一次,内循环执行全部
for(外循环变量初始化;外循环条件;外循环变量操作语句){
for(内循环变量初始化;内循环条件;内循环变量操作语句){
内层循环语句
}
外层循环语句
}
// 外循环执行一次,内循环执行一轮
while及do while循环
循环变量初始化
while(条件表达式){
循环语句;
循环变量操作语句;
}
//当条件表达式为true时{}中语句执行,否则跳出循环
循环变量初始化
do{
循环语句;
循环变量操作语句;
}while(条件表达式);
//do while循环至少会执行一次,而while/for循环可能一次都不执行
//while循环适用于 循环条件比较灵活的场景 而for循环适用于循环次数比较确定的场景
break及continue关键字
break用于跳出当前循环(默认不会跳出外层循环);
当break用在switch结构中时只会跳出switch不会跳出循环
continue用于结束本次循环直接进入下一次循环