循环:一件事不停地或者重复的去做
循环要有结束的条件,循环要有计数器(记录循环的次数)
while循环
语法:
计数器
var 变量=0;
while(循环条件){
循环体;
计数器++;
}
执行过程
先判断循环条件是否成立(条件的结果是true或者false),如果是false则循环的代码不执行(while的大括号中的代码都不执行),如果是true ,则先执行循环体,在执行计数器,然后再去判断循环的条件是否成立,成立则继续执行循环体,否则就跳出循环,执行完循环体后,计数器+1,然后再去判断循环的条件是否成立,成立则循环,否则就跳出循环
例子:
输出10次“你好帅”
var i=0;//计数器
while(i<10){
console.log("你好帅"+i);
i++;//记录次数
}
计算1-3之间的和
var num=0;//存储值
var i=0;//计数器
while(i<=3){
sum=sum+i;
i++;
}
console.log("和=:"+sum)
while循环的例子
1.求6的阶乘
var ji=1;//存储值
var i=1;//计数器
while(i<7){
ji*=i;
i++;
}
console.log(ji);
2.求1到100之间所有偶数的和
var sum=0;
var i=0;
while(i<=100){
if(i%2!=0){
sum+=i;
}
i++;
}
console.log(sum);
3.计算 1 到100之间所有奇数的和
var sum=0;
var i=0;
while(i<=100){
if(i%2!=0){
sum+=i;
}
i++;
}
console.log(sum);
4.输出1到100之间能被7整除的书
var i=0;
while(i<=100){
if(i%7==0){
console.log(i);
}
i++;
}
- 求帐号和密码是否一致,登录的效果实现
提示用户输入帐号
提示用户输入密码
如果帐号或者密码不对,则一直提示用户输入帐号和密码
帐号–admin
密码–123—字符串类型
var userName = prompt("请输入用户名");
var userPwd = prompt("请输入你密码");
while (userName != "admin" || userPwd != "123") {
var userName = prompt("请输入用户名");
var userPwd = prompt("请输入你密码")
}
console.log("登录成功");
do-while循环
语法
do{
循环体;
}while(条件);
执行过程
先执行一次循环体,然后判断条件是否成立,不成立,则跳出循环,成立则执行循环体,然后再判断条件是否成立,成立则执行循环体,否则跳出循环
例子
输出“我好帅10次”
var i=0;
do{
console.log("我好帅");
i++;
}while(i<10);
例子
问用户你觉得我帅吗?提示用户输入Y或N,如果输入N则重复提问,输入Y则结束并提示用户你真有眼光
do{
var result=prompt("你觉得我帅吗");
}while(result!="Y");
console.log("你 真有眼光");
总结:do-while和while循环的特点
1.while循环的特点:先判断后循环,可能一次循环都不执行
2.do-while循环的特点:先循环,后判断,至少循环一次
for循环
语法格式:
for(表达式1;表达式2;表达式3){
循环体;
}
执行过程:
先执行表达式1一次,然后判断表达式2,如果不成立则跳出循环
如果表达式2成立则执行一次循环体,然后执行表达式3,然后再判断表达式2,成立则在执行一次循环体,不成立则跳出 循环;
一直到条件不成立,跳出循环
例子
打印10次好帅
for(var i=0;i<10;i++){
console.log("好帅");
}
补充部分
1.alert:弹窗
2.console.log():控制台
3.document.write(" "):在页面上输出内容
九九乘法表
//使用for循环输出99乘法表
for (var i = 1; i <= 9; i++) {
for (var j = 1; j <= i; j++) {
document.write(i + “*” + j + “=” + i * j);
}
document.write("
")
}
break
break关键字:如果在循环中使用,遇到break则立刻跳出当前循环,
例子:找到100到200之间第一个能被7整除的数
for (var i = 100; i <= 200; i++) {
if (i % 7 == 0) {
console.log(i);
break;
}
}
continue
continue关键字:如果在循环中使用,遇到continue直接开始下一次循环,
例子:求100到两班之间所有技术的和(用continue)
var sum=0;
var i=100;
while(i<=200){
if(i%2==0){
i++;
continue;
}
sum+=i;
i++;
}
console.log(sum);
例子:求整数100到200的累加值,要求跳过个位数为3的数
var sum=0;
var i=100;
while(i<=200){
if(i%10==3){
i++;
continue;//跳过
}
sum+=i;
i++;
}
console.log(sum);