1.循环结构-for循环
- 分支结构:根据条件决定代码是否执行。
- 循环结构:让代码重复的执行
01.for循环
语法:for(let ``i = 0; i< 10 ; i++){语句块(循环体))
}
for( 定义一个循环控制变量; 表达式 ; 循环控制变量修改 ){
语句块(循环体)
}
...后续代码
执行逻辑:
- 首先执行 定义一个循环控制变量, 此步仅执行1次
- 判断 表达式 是否成立?如果不成立就直接退出整个语法结构,执行后续代码。如果成立就执行语句块(循环体)
- 当 语句块(循环体) 执行结束后,再执行 循环控制变量修改
- 再来判断 表达式 是否成立?如果不成立就直接退出整个语法结构,执行后续代码。如果成立就执行语句块(循环体)
- 重复的执行 b c d
实践代码
for (let i=0; i<10; i++) {
let data=prompt ('请输入数据'); //一起会弹出9次让用户输入
console.log(data)
}
02-for循环控制变量的应用
1.输出1至100之间的整数
for(let i=1;i<=100;i++){
console.log(i)
}
2. 将1至100之间即能被3整除,又能被5整除的整数打印出来。
for(let i=1;i<=100;i++){
if(i % 3 ==0 && i % 5 == 0){
console.log(i)
}
}
3.将用户输入的10个数保存到一个数组中
let a = [] ;
// 利用for 循环,反复输出,然后保存到数组里
for (let index = 0; index < 3; index++) {
// a.push(prompt('请输入一个数'))
a[index] = prompt('请输入一个数')
}
document.write(a);
console.log(a)
03.-循环嵌套的执行逻辑
执行逻辑:
- 外层循环--循环1次,
- 内层循环--内层循环循环一周。
//一行10列的表格
let str = '<table border="1" rules="all" width="700" height="500">';
// 外层循环 循环1次,
for(let j=1; j<=10;j++){
str += '<tr>';
// 内层循环 内层循环循环一周。
for(let i=1;i<=10;i++){ //i=1 2 3 4 5 6 7 8 9 10
str += '<td></td>'
}
str += '</tr>';
}
str += '</table>';
document.write(str)
九九乘法表案例
let str = '<table border="1" rules="all" width="700" height="500">'
for(let row=1; row<10 ;row++){
str += '<tr>';
for(let col=1; col<=row;col++){
str +=`<td>${col}*${row}=${col*row}</td>`
}
str += '</tr>';
}
str +='</table>'
document.write(str)
2.循环结构-while循环
执行逻辑:
-
先判断表达式是否成立,如果不成立就直接跳过while结构,继续后面的代码执行。
-
如果成立就执行循环体。循环体执行结后再来判断表达式是否成立
-
依此规律循环往复的执行,直到表达不成立(或提前退出)
while语法: while(表达式){ 循环体 }
while循环就是for循环的一个变形
代码演示
let i=1;
while(i<=10){
console.log(i);
i++;
}
3.break与continue
break与continue是用于在循环内,控制循环的。
break直接结束循环continue结束本次循环里continue后面的代码,继续下一次循环
// break直接结束循环
for(let i=1;i<10;i++){
//....
if(i% 3==0){
break; //直接结束循环
console.log('hello');
}
//...
console.log(i);
}
// ....后续代码
// ....后续代码
// ....后续代码
//continue结束本次循环里continue后面的代码,继续下一次循环
for(let i=1;i<10;i++){
//....
if(i% 3==0){
continue;
console.log('hello');
}
//..
console.log(i);
}
// ....后续代码
// ....后续代码
// ....后续代码
4.while与for循环的区别
for循环是根据次数循环,循环次数已知while循环是根据条件进行循环,循环次数未知
接收用输入的n个数,如果想结束输入,输入一个大于10000的数
while(true){ // 使用while解决循环次数未知的代码套路。
let data = prompt('请输入数,如果想退出输入大于10000')
console.log(data);
if(data>10000){ //条件
break; // 条件满足就终止退出
}
}