Javascript的语句

我们知道,大部分语言都有三种类型的语句,他们分别是顺序语句,分支语句,循环语句。

一:顺序语句:顺序语句很简单,就是我们平常写的语句,没有任何的if和switch语句进行分支,也没有while和do...while以及for语句。

二:分支语句:

分支语句有两大类:if语句和case语句。

1.  if语句:

          if(表达式){

                    //语句1

        }

      这个语句的意思是如果满足表达式,就执行语句1,如果不满足就跳过语句1,继续往后面执行。表达式是一个返回boolean类型的语句。

        if(表达式){

            //语句一

}else{

        //语句二

}

  这个语句的意思是如果满足表达式,就执行语句一,如果不满足就跳过语句一,执行语句二。表达式是一个返回boolean类型的语句。

if(表达式一){

    //语句一

}else if(表达式二){

    //语句二

}......

else{

    //语句n

}

 这个语句的意思是如果满足表达式一,就执行语句一,如果不满足就跳过语句一,判断表达式二,若满足执行语句二。不满足则继续往下,以此重复。如果都不满足,就会执行else语句。表达式是一个返回boolean类型的语句。这里要注意,不管有多少个if else语句都只执行一个语句。

2.switch语句。

他的语法是:

switch(表达式){

    case 常量标号一:

    case 常量标号二:

    case常量标号三:

    .................

    default:

}

这里执行的方式是,先通过表达式的值,来和case中的常量标号进行匹配,如果匹配成功,则执行。如果不匹配的话就会执行defalut语句。

表达式必须是一个常数

这里特别需要注意的是:case语句会有穿透的作用,穿透的意思是:如果匹配到了其中一个case里的常量标号,会执行这个case这里的语句。执行完以后不会直接跳出这个switch语句,而是会继续往下执行。为了避免这一现象的发生。通常我们会在每一个case语句的后面都会加上break进行跳出该switch语句。例如:

<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <meta name="Generator" content="EditPlus®">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <title>switch语句中不添加break的执行结果</title>
 </head>
 <body>
	<script type="text/javascript">
		var a=4;
		
		switch(a){
			case 0:document.write("星期天"+"<br/>");
			case 1:document.write("星期一"+"<br/>");
			case 2:document.write("星期二"+"<br/>");
			case 3:document.write("星期三"+"<br/>");
			case 4:document.write("星期四"+"<br/>");
			case 5:document.write("星期五"+"<br/>");
			case 6:document.write("星期六"+"<br/>");
			default:document.write("输入无效"+"<br/>");
		}
	</script>
 </body>
</html>
星期四
星期五
星期六
输入无效

在这个例子中,在每一个case语句后面都没有添加break语句。当a=4时,会从case 1开始逐渐匹配,当case 4时匹配到了,然后打印星期四,但是此时程序还有没有结束,依然会逐步打印。这样的效果就称为case穿透

<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <meta name="Generator" content="EditPlus®">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <title>switch语句中不添加break的执行结果</title>
 </head>
 <body>
	<script type="text/javascript">
		var a=4;
		
		switch(a){
			case 0:document.write("星期天"+"<br/>");break;
			case 1:document.write("星期一"+"<br/>");break;
			case 2:document.write("星期二"+"<br/>");break;
			case 3:document.write("星期三"+"<br/>");break;
			case 4:document.write("星期四"+"<br/>");break;
			case 5:document.write("星期五"+"<br/>");break;
			case 6:document.write("星期六"+"<br/>");break;
			default:document.write("输入无效"+"<br/>");
		}
	</script>
 </body>
</html>
星期四

在这个例子中,在每一个case语句后面都添加了break语句。当a=4时,会从case 1开始逐渐匹配,当case 4时匹配到了,然后打印星期四,然后继续执行,遇到break,跳出当前循环。这里需要注意一下,default没有加break语句的原因是它默认就有一个break语句。

三,循环语句:

1.while循环

    语法:

  while(表达式){
循环体;

  }


  解析:表达式的值是boolean类型。当返回值为true时,执行循环体。 否则不执行。在正常情况下,在循环体语句里面有使循环趋于结束的变量。不然就会陷入死循环

2.do...while();循环

 do{

        //循环体

          }while();

  解释: 先执行循环体。 然后去判断条件。条件成立,继续do。这里要特别注意一下:

        1.  在do...while循环的while();后面是有分号的,而while后面是没有的

        2.     不管while里面的条件的结果是不是true,都会先执行一次循环体

3.for循环

for(表达式1;表达式2;表达式3){
循环体语句。 
   }


   解释:
   表达式1;初始化一个变量。 
   表达式2; boolean类型的值。 控制循环次数。 
   表达式3; 是表达式二趋于false的结果。 
          先执行表达式一--->表达式二----->
          循环体语句----->表达式三----> 表达式二--->

  当表达式二返回一个false时候,结束循环 。 

这么多循环我们到底用哪个好呢?

  for:  当明确循环次数的时候,优先使用for循环。 在开发的过程中这个循环也是占主要部分

   while:当循环次数不确定的时候,就该while循环出场了

do...while:这个循环老师说用的不多,但是我还是挺喜欢用这个循环的。例如用来控制输入,先让用户输入一次,如果输入的不符合规范的话,就继续输入,直到用户输入规范为止。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值