if分支语句
判断条件是否为真
单分支
语法:
if(条件){
语句
}
···
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
</body>
<script>
// 单分支
/*
根据年龄判断
18一下未成年 18-60成年人 60以上老年人
*/
const age=parseInt(window.prompt("请输入年龄:"));
if(age>0 && age<18){
alert("未成年");
}
if(age>=18 && age<60){
alert("成年人");
}
if(age>60){
alert("老年人");
}
alert("输入错误");
</script>
</html>
双分支
语法:
if(条件){
语句
} else if(条件){
语句
}
···
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body></body>
<script>
// 双分支
/*
小明考了100分就去游乐园,否则写作业
*/
const scores = Number(window.prompt("小明的分数:"));
if (scores === 100) {
console.log("去游乐园");
} else {
console.log("写作业");
}
</script>
</html>
多分支
语法:
if(条件){
语句
}
if(条件){
语句
}
···
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body></body>
<script>
// 多分支
/*
年龄小于18,周一到周五上课
年龄18-70,周日逛街
年龄大于70,周二看电影
*/
const age=Number(window.prompt("请输入年龄:"));
const day=Number(window.prompt("请输入星期几:"));
if (age < 18 && day <= 5) {
alert("上课");
} else if (age >= 18 && day === 7) {
alert("逛街");
} else if (age > 70 && day === 2) {
alert("看电影");
}
</script>
</html>
嵌套分支
if(条件){
语句
if(条件){
语句
} else if(条件){
语句
}
}
···
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body></body>
<script>
// 嵌套分支
//尽量不要用嵌套,它会增加代码复杂度
/*
年龄小于18岁,周一到周五上课,反之打游戏
*/
const age = Number(window.prompt("输入年纪:"));
const day = Number(window.prompt("今天星期几:"));
if (age < 18) {
if (day >= 1 && day <= 5) {
console.log("上学");
} else {
console.log("打游戏");
}
}
</script>
</html>
循环语句
1.重复执行代码就需要用到循环
2.满足条件才会循环,条件不满足就会退出
死循环:循环条件表达式永远为真,循环体语句一直执行
例如:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body></body>
<script>
/*
死循环
*/
while(true){
console.log("死循环");
}
</script>
</html>
for循环语句
语法:
for(初始值;循环次数;步长){
循环体
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
</body>
<script>
// 循环
/*
for(循环条件){
循环体
}
*/
for(let i=1; i<6; ++i){
document.write("for循环\n")
}
/*
let i=1; i<6; ++i
第一次循环 i=1;1<6;执行循环体;++i;
*/
</script>
</html>
switch循环语
语法:
switch(变量){
case 值:
循环体1;
break;
case 值:
循环体2;
break;
······
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
</body>
<script>
/*
输入一个数字
输出今天是星期几,超出7之后就提示输入错误
*/
let myDay=Number(window.prompt("输入数字:"));
switch(myDay){
case 1:
document.write("今天星期一");
break;
case 2:
document.write("今天星期二");
break;
case 3:
document.write("今天星期三");
break;
case 4:
document.write("今天星期四");
break;
case 5:
document.write("今天星期五");
break;
case 6:
document.write("今天星期六");
break;
case 7:
document.write("今天星期天");
break;
}
</script>
</html>
while循环
语法:
while(循环条件){
循环体
++i;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
</body>
<script>
// while
while(i<=5){
document.log("while使用场景循环次数不确定");
++i;
}
</script>
</html>
do while循环(不建议用)
语法:
do{
循环体
++i;
}while(循环条件)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
</body>
<script>
// do while
do{
document.log("do while,先执行后验证");
++i;
}while(i<=5)
</script>
</html>
for循环、while循环和do while循环区别:
for:循环次数是固定的,先执行后验证
while:循环次数不固定,先执行后验证
do while:先验证后执行
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
</body>
<script>
/*
循环
1.重复执行代码就需要用到循环
2.满足条件才会循环,条件不满足就会退出
*/
// for
for(let j=1;j<=5;++j){
document.log("for使用场景循环次数是固定的");
}
// while
while(i<=5){
document.log("while使用场景循环次数不确定");
++i;
}
// do while
do{
document.log("do while,先执行后验证");
++i;
}while(i<=5)
</script>
</html>