选择结构
循环结构
循环小案例
if else
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script type="text/javascript">
/*
js三种控制结构 顺序结构
条件结构(分支结构)
循环结构(重复结构)
*/
var age = 23;
/*
单分支
if (表达式) {
// 语句
}
先执行表达式,表达式为true,则执行大括号里面的语句 否则if什么都不做
*/
// if (age>=18) {
// alert("恭喜你,可以网上冲浪");
// alert("先充值");
// }
if (age>=18) {
alert("恭喜你,可以网上冲浪");
alert("先充值");
} else {
alert("未成年人禁止进入网吧!!!");
}
alert("over");
/*
其他类型转布尔类型
undefined转成布尔值false
null ..... false
数字----> +0 -0 NaN都会转false 其他为true
字符串----> "" '' 转false 其他为true
对象 ------> true
*/
if(null) {
alert("哈哈");
}
</script>
</body>
</html>
返回上层目录
switch
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script type="text/javascript">
/* 猜拳小游戏
1 石头 2 剪刀 3 布
计算机每一次随机生成1-3一个数
*/
//console.log(parseInt(Math.random()*3+1)); // [0,1) 1<=x*3+1<4
// 1 玩家出一个数
var player = parseInt(prompt("请输入一个数字1~3"));
// 2 计算机随机产生一个整数
var computer = parseInt(Math.random()*3+1);
console.log(computer);
switch(player) {
case 1:
switch(computer) {
case 1:
alert("平局");
break;
case 2:
alert("玩家胜");
break;
case 3:
alert("计算机胜");
break;
}
break;
case 2:
switch(computer) {
case 1:
alert("计算机胜");
break;
case 2:
alert("平局");
break;
case 3:
alert("玩家胜");
break;
}
break;
case 3:
switch(computer) {
case 1:
alert("玩家胜");
break;
case 2:
alert("计算机胜");`在这里插入代码片`
break;
case 3:
alert("平局");
break;
}
}
</script>
</body>
</html>
返回上层目录
while
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script type="text/javascript">
// while循环 do-while循环 for循环
// 打印1-100
/*
console.log(1);
console.log(2);
console.log(3);
console.log(4);
console.log(5);
*/
/*
while(循环条件) {
// 循环体------需要重复的语句
}
执行流程 1 先判断循环条件
2 假如条件为真,则执行循环体后继续回到1
假如条件为假,整个while结束
死循环指的是条件永远成立
*/
// var i = 1; // i代表一个数
// while(i<=100) {
// // 打印i
// console.log(i);
// i++;
// }
// 页面上输出10个* 每一次输出一个
// var i = 1;// i表示次数
// while(i<=10) {
// document.write("*");
// i++;
// }
// alert(i);
// 输出1-100之间所有能被3整除又能被8整除的数
// 不断拿一个数进行判断
/*var i = 1;
while(i<=100) {
// 对i进行判断
if (i%3==0 && i%8==0) {
console.log(i);
}
i++;// ++i i=i+1 i+=1
}*/
// 求和 0+1+2+3+...+100
// 1 定义一个变量sum存储和
var sum = 0;
// 2 定义一个变量表示加数
var i = 1;
while(i<=100) {
sum = sum + i;
i++;
}
alert("sum="+sum);
</script>
</body>
</html>
返回上层目录
do while
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script type="text/javascript">
// 在页面中输出1-5
var i = 1;
// while(i<=5) {
// document.write(i);
// i++;
// }
/*
do {
循环体
} while(条件);
先执行循环体,判断条件,假如条件为真继续执行循环体,直到条件为假do-while循环结束
while的循环体可能一次也不执行 do-while循环体至少执行一次
*/
do {
// 重复的语句-----循环体
document.write(i);
i++;
} while(i<=5);
</script>
</body>
</html>
返回上层目录
for
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script type="text/javascript">
// 打印1-10
/*for(表达式1;表达式2;表达式3) {
// 循环体
}
表达式1------变量初始化
表达式2------循环条件
表达式3------循环变量改变
执行流程: 1 先执行表1
2 执行表2,表2为假 for循环结束 表2为真执行第3步
3 执行循环体
4 执行表3 再回到第2步
*/
// for(var i = 1; i<=10; i++) {
// // 循环体
// document.write(i+" ");
// }
// var i = 1;
// for(; i<=10; ) {
// // 循环体
// document.write(i+" ");
// i++;
// }
/*下面是死循环*/
for(;;) {
console.log(1);
}
</script>
</body>
</html>
返回上层目录
循环小案例
```<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script type="text/javascript">
/*
*****
*****
*****
*****
*****
*/
// for(var i=1; i<=5; i++) {
// document.write("*****<br>");
// }
/* 打印图形 其实就是打印若干行 每行打印若干个*
var lines = parseInt(prompt("请输入打印的行数"));
var stars = parseInt(prompt("请输入每行星星数"));
// 定义一个循环控制行数
for(var i=1; i<=lines; i++) {
// 每行打印若干个*
for(var j=1; j<=stars; j++) {
document.write("*");
}
// 换行
document.write("<br>");
}
*/
/*
* 1 1
** 2 2
***
****
*****
*/
var lines = parseInt(prompt("请输入打印的行数"));
for(var i=1; i<=lines; i++) {
for(var j=1; j<=i; j++) {
document.write("*");
}
// 换行
document.write("<br>");
}
/* 练习
*
***
*****
*******
*********
*/
// 打印图形 其实就是打印若干行 每行输出若干个空格和若干个*
/* 行数 空格数 *数
i=0 4 1
i=1 3 3
i=2 2 5
i 4-i 2*i+1
*/
// 定义一个循环 控制行数
for(var i=0; i<=4; i++) {
// 首先打印若干个(4-i)空格
for(var j=0; j<4-i; j++) {
document.write(" ");
}
// 再打印若干个*(2*i+1)
for(var k=0; k<2*i+1; k++) {
document.write("*");
}
// 换行
document.write("<br/>");
}
</script>
</body>
</html>