文章目录
前言
本篇学习JS中的几大结构,是比较重要的内容。
一、代码块
利用{ }进行语句分组
一个{ }中的语句称为一个代码块
代码块里的内容,在外部是可见的
二、条件语句
条件成立则执行语句,否则不执行语句
1.条件判断语句 if
语句结构如下:
//第一种结构
if(条件表达式)
{语句1...}
else*斜体样式*
{语句2...}
//第二种结构 从上到下依次判断,若有满足就不再执行剩下判断语句
var a = 5;
if(a>100)
{alert("a大于100");}
else if(a>70)
{alert("a大于70");}
else if(a>0)
{alert("a大于0");}
else
{alert("a小于等于0");} //也可以没有这个else
注意,在if elseif语句中,会从上到下依次判断,若有满足就不再执行剩下判断语句
练习:
prompt( )函数:可以弹出一个提示框,参数为字符串,即作为提示的文字,返回用户输入的值,返回的是String
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>if 练习</title>
<script type="text/javascript">
/*
* 编写程序,由键盘输入三个整数分别存入变量num1、num2、num3,
* 对他们进行排序,并且从小到大输出。
*/
var num1 = +prompt("请输入变量1");
var num2 = +prompt("请输入变量2");
var num3 = +prompt("请输入变量3");
var temp;
if(num1>num2){
temp=num1;
num1=num2;
num2=temp;
}
if(num1>num3){
temp=num1;
num1=num3;
num3=temp;
}
if(num2>num3){ //要注意23是最后比较的这个顺序
temp=num2;
num2=num3;
num3=temp;
}
alert("从小到大输出"+num1+","+num2+","+num3);
</script>
</head>
<body>
</body>
</html>
2.条件分支语句 switch
语句结构如下:
switch(条件表达式){
case 表达式:
语句1
break;
case 表达式:
语句2
break;
case 表达式:
语句3
break;
default:
语句4
break;
}
switch语句会依次将case中的表达式的值和switch后的条件表达式的值进行全等比较。如果某一个case的比较结果为true,则从当前case处开始执行代码,剩下的case都会执行,所以需要break跳出剩下的case。
default是其他case都为false后执行的语句,否则不执行
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>switch练习2</title>
<script type="text/javascript">
/*
* 从键盘接收整数参数,如果该数为1-7,打印对应的星期,否则打印非法参数。
*/
var day = +prompt("请输入");
switch(true){ //这里会将day是否满足1-7与true比较,满足了就是true全等,则执行
case day>=1 && day <=7:
alert(day);
break;
default:
alert("非法");
break;
}
</script>
<body>
</body>
</html>
三、循环语句
1.while
语句结构如下:
while(条件表达式){
语句1
}
var i = 0;
while(i <= 10){
document.write(i++ +"<br />");
}
do{
语句2
}while(条件表达式)
do while语句至少执行一次
2.for
语句结构如下:
for(初始化表达式;条件表达式;更新表达式){
语句1
}
for循环中的三个部分都可以省略,也可以写在外部
注意 JS中 商 一定要取整
//水仙花数
var count=0;
var bai=0,shi=0,ge=0;
for (var i=100;i<=999;i++){
bai =parseInt(i/100); //parseInt非常重要
shi =parseInt((i-bai*100)/10);
ge= i%10;
if((Math.pow(bai,3)+Math.pow(shi,3)+Math.pow(ge,3))==i){
console.log(i);
count++;
}
}
console.log(count);
for循环嵌套
//打印99乘法表
for (var i=1;i<10;i++){
for(var j=1;j<=i;j++){
document.write(j+"*"+i+"="+(i*j)+" "); // 是空格
}
document.write("<br />");
}
四、break和continue
1.break
用于退出当前循环语句,必须放在有循环结构的语句内,终止离自己最近的循环
如果要终止指定循环,则用label:标记循环,然后使用break label终止指定循环
outer:
for(var i=0 ; i<5 ; i++){
console.log("@外层循环"+i)
for(var j=0 ; j<5; j++){
break outer;
console.log("内层循环:"+j);
}
}
2.continue
用于跳过当次循环,跳过一次离自己最近的循环
continue也可以跳过指定循环,用法类似break
console.time(“计时器的名字”)可以用来开启一个计时器
console.timeEnd(“计时器的名字”)用来停止计时器
总结
本篇归纳了条件语句、循环语句的用法。
根据尚硅谷李立超老师2019年的JS视频整理而成。