1 while循环
1.1 语法结构
// while (条件表达式) {
// 循环体
// }
// 执行思路: 当条件表达式为 true 执行循环体,否则退出
1.2 while循环案例
// 1 打印人的一生,从1岁到100岁
<script>
var age = 0; // // 另外一种写法,age =1,age<=100
while (age < 100) {
age++;
if (age == 1) {
console.log('今年一岁了,出生了!');
} else if (age == 80) {
console.log('今年八十岁了,他死了!');
} else {
console.log('今年' + age + '岁了!');
}
}
</script>
// 2 计算1~100之间的所有整数的和
<script>
var sum = 0;
var num = 0; // 另外一种写法,num =1,num<=100
while (num < 100) {
num++;
sum = sum + num;
}
console.log(sum);
</script>
// 3 弹出一个提示框,你爱我吗? 如果输入你爱我,结束,否则一直弹出
<script>
var love = prompt('你爱我吗?');
while (love !== '我爱你!') {
love = prompt('你爱我吗?');
}
alert('我也爱你啊!')
</script>
2 do while 循环
2.1 语法结构
// do {
// 循环体
// } while (条件表达式)
// 执行思路 跟while不同的是,它会先执行一次循环体,再判断条件,为真再执行。
// do while 循环 至少执行一次
2.2 do while案例
// 1 打印人的一生,从1岁到100岁
// 2 计算1~100之间的所有整数的和
// 3 弹出一个提示框,你爱我吗? 如果输入你爱我,结束,否则一直弹出
// 循环小结
// 如果用来计数,三者基本相同,更喜欢用for
// while和do while可以做更复杂的判断条件,比for更灵活
// while是先判断后执行,do while 先执行在判断
// 主要学习for循环,重点!!!!
3 continue 关键字
// 用于立即跳出本次循环,继续下一次的循环
// 案例:求1~100中,除了能被5整除之外的和
<script>
var sum = 0;
for (var i = 1; i <= 100; i++) {
if (i % 7 == 0) {
continue;
}
sum = sum + i;
}
console.log(sum);
</script>
4 break 关键字
// 用于跳出整个循环(循环结束)
<script>
for (var i = 1; i <= 5; i++) {
if (i == 3) {
break;
}
console.log('我正在吃第个' + i + '包子');
}
</script>
5 循环总作业
// 1 求1-100之间所有数的总和和平均值
<script>
var sum = 0;
var average = 0;
for (var i = 1; i <= 100; i++) {
sum = sum + i;
average = sum / i;
}
console.log(sum);
console.log(average);
</script>
// 2 求1-100之间所有偶数的和
<script>
var doubles = 0;
for (var i = 1; i <= 100; i++) {
if (i % 2 == 0) {
doubles = doubles + i;
}
}
console.log(doubles);
</script>
// 3 求100以内7的倍数的总和
<script>
var sum = 0;
for (var i = 1; i <= 100; i++) {
if (i % 7 == 0) {
sum = sum + i;
}
}
console.log(sum);
<script>
// 4 使用for循环打印5×4矩形(每次只能输出一个*)
<script>
var str = '';
for (var i = 1; i <= 4; i++) {
for (var j = 1; j <= 5; j++) {
str = str + '*';
}
str = str + '\n';
}
console.log(str);
</script>
// 5 使用for循环打印为5行的正三角形
<script>
var str = '';
for (var i = 1; i <= 5; i++) {
for (var j = 1; j <= i; j++) {
str = str + '*';
}
str = str + '\n';
}
console.log(str);
</script>
// 6 使用for循环打印99乘法表
<script>
var str = '';
for (var i = 1; i <= 9; i++) {
for (var j = 1; j <= i; j++) {
// 1 × 1 = 1
str += j + '×' + i + '=' + j * i + '\t';
}
str = str + '\n';
}
console.log(str);
</script>
// 7 接收用户的用户名和密码,如用户名为root密码为1234,登录成功,否则一直输入
<script>
var username = prompt('请输入您的用户名:');
var pwd = prompt('请输入您的密码:');
while (username !== ' root ' && pwd !== '1234') {
username = prompt('请输入您的用户名:');
pwd = prompt('请输入您的密码:');
}
alert('登录成功!');
</script>
// 8 求1-100的累加值,要求跳过所有各位为3的数(continue)
<script>
var sum = 0;
for (var i = 1; i <= 100; i++) {
if (i % 3 == 0) {
continue;
}
sum = sum + i;
}
console.log(sum);
</script>