目录
条件判断语句
条件判断语句包括if语句及其各种变形、switch语句。这些语句可以根据不同的条件来执行不同的语句块。if语句是最简单最常用的条件判断语句,通过判断条件表达式的结果为true或flase来确定要执行哪一个语句块。
if语句
if(条件表达式)
{
语句块1;
}
如果条件表达式为true的话,则执行语句1,为flase则不执行
if-else语句
if语句是条件分支语句,如果条件表达式为true,则程序只执行语句块1,不执行语句块2的代码;如果条件表达式值为false,则程序跳过语句块1直接执行语句块2。
if(条件表达式)
{
语句块1;
}
else
{
语句块2;
}
多重if语句
如果判断的条件多余一个,则可以使用多重if语句。语法如下:
if(条件表达式1)
{
语句块1;
}if else(条件表达式2)
{
语句块2;
}
....
else if(条件表达式n)
{
语句块n;
}
else
{
语句块n+1;
}
使用这种多重if语句可以进行更多的条件判断,不同的条件对应不同的程序语句。
嵌套if语句
如果在if语句中在嵌入if语句就形成了嵌套if语句。例如我们想让三个数字比较大小,最后输出最大的数,代码如下
<script type="text/javascript">
//声明并赋值三个变量
var a = 10,
b = 8,
c = 4;
//判断a,b比较
//如果a>b
if (a > b) {
//并且a>c,此时c为最大值
if (a > c) {
//弹出框输出d的值
alert("最大值是" + a)
}
//当a>b不成立时,此时b>a
} else {
//如果b<c,那么可得c为最大
if (b < c) {
//弹出框输出c的值
alert("最大值是" + c);
}
}
</script>
switch结构
switch结构用于将一个表达式的结果同各个选项进行比较,若找到匹配的选项,就执 行匹配选项中的语句。如果没有匹配的选项,就直接执行默认选项中的语句。在Java语言 中,switch结构中的表达式的值只能是char型、int型和byte型。在JavaScript中,除字符型和 number型外,还可以是字符串类型。不管哪种类型,条件的取值和表达式的值的类型必须 是一致的,否则,将有语法错误。
switch(表达式)
{
case 条件1:语句1;
break;
case 条件2:语句2;
break;
...
case 条件n : 语句块n;
break;
default:语句块n+1;
}
案例:
- 使用switch实现判断商品购买的状态:1:未付款 2:已付款 3:待发货 4:已发货 5:运输中 6:已签收
//创建可输入弹出框并用变量mo接受因为prompt函数输入默认是字符串类型,我在这里做个强制转换数据类型
var mo =parseInt( prompt("请输入1-6"));
switch (mo){ //switch语句;变量mo为基准值
case 1: //当mo为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;
default:
document.write("你输入的数字不对")
break;
}
这里需要注意的是switch结构中,case关键字后的条件只能是常量表达式,也就是具体的值,根据表达式的值来执行对应执行语句,执行完后直至遇到break语句,从switch结构中跳出去,如果case条件列表中没有匹配的选项,则程序会选择default后面的语句。
循环控制语句
在程序中,循环的作用用于重复的做某件事,在JavaScript中支持的循环语句有四种
while循环
while循环结构先判断循环条件是否成立,如果成立,则重复执行{}里的语句,知道条件不成立为止;如果条件不成立,则跳过{}内的语句块。
案例:使用while循环弹出框三次
var i = 1; //声明变量
while (i < 4) { //循环三次
alert("弹出第" + i + "次") //y循环出弹窗
i++ //每次i都会加1
}
注意,在while循环里没有设定停止循环语句,与for循环不同,所以要在手动设置一个结束循环的操作。
do-while循环
do-while循环先执行语句块一次,然后才判断循环条件是否成立,如果成立则重复执行语句块;如果条件不成立,则循环结束。语法如下
do
{
语句块;
}while(循环条件);
do {
alert("不管对错我先执行一次")
} while (false)
我们可以发现就算while里的循环条件即使为false,语句块还是能执行一次的,
所以do-while与while循环的区别
do-while循环:先执行,后判断
while循环:先判断,后执行
JavaScript中最常用的循环语句是for循环。只要给定的条件为true,for循环就重复执行循环体内的语句块。语句结构;
for (循环条件) {
循环体
}
案例:使用for循环计算1-100数字的和
var sum = 0 //定义变量用于接收每次循环连加的值
for (var i = 1; i < 101;i++) { //for循环从1-100
sum += i //每次i+1的值重新赋值给sum实现连加和
}
document.write(sum) //在页面打印出sum值
break 和 continue语句
在switch case语句中使用过,意思跳出switch-case结构,继续执行后面的语句,break语句的意思是跳出循环结构,终止循环。在循环中continue语句是用来跳过本此循环,但是并不结束循环,只是当前次的循环跳过而已
主要说一下continue语句,下面上案例;
在网页上显示100以内的偶数
//从1-100数数字依次比较
for (var i = 1; i < 101; i++) {
//如果i能被2整除时,则输出这个数字并换行
if (i % 2 == 0) {
document.write("<br/>")
document.write(i)
continue //跳出当前次循环
}
}
break 和 continue区别总结:break结束整个循环或到遇到break语句不执行后面代码块,continue跳出当前循环,继续下次循环,不会停止循环
只有坚定不移的向前跑,才不会迷失方向