JavaScript知识(3)

1.JavaScript条件语句

通常在写代码时,您总是需要为不同的决定来执行不同的动作。您可以在代码中使用条件语句来完

成该任务

在 JavaScript 中,我们可使用以下条件语句:

- 只有当指定条件为 true 时,使用该语句来执行代码

if...else 语句 - 当条件为 true 时执行代码,当条件为 false 时执行其他代码

if...else if....else 语句- 使用该语句来选择多个代码块之一来执行

switch 语句 - 使用该语句来选择多个代码块之一来执行

if 语句

只有当指定条件为 true 时,该语句才会执行代码

格式:

if (condition){
    当条件为 true 时执行的代码
}

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <script>
            var age=19;
             if(age>=18){
                 alert("成年人!");
             }
         </script>
    </head>
    <body>
    </body>
</html>

在这个格式中,没有 ..else..。您已经告诉浏览器只有在指定条件为 true 时才执行代码

if...else 语句

请使用 if....else 语句在条件为 true 时执行代码,在条件为 false 时执行其他代码。

格式:

if (condition){
    当条件为 true 时执行的代码
}else{
    当条件不为 true 时执行的代码
}

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <script>
             var age=10;
             if(age>=18){
                 alert("成年人")
             }
             else{
                 alert("未成年")
             }
         </script>
    </head>
    <body>
    </body>
</html>

if...else if...else if...else if...else 语句

使用if...else if...else if...else if...else 语句来选择多个代码块之一来执行

格式:

if(判断条件1){

                javascript代码1

            }else if(判断条件2){

                javascript代码2

            }

            ...

            else if(判断条件n){

                javascript代码n

            }else{

                所有的判断条件都为false

            }

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <script>
             var num1=200;
             var num2=12;
             var op="/";
             if(op=="+"){
                 alert(num1+"+"+num2+"="+(num1+num2));
             }else if(op=="-"){
                alert(num1+"-"+num2+"="+(num1-num2));
             }else if(op=="*"){
                alert(num1+"*"+num2+"="+(num1*num2));
             }else if(op=="/"){
                alert(num1+"*"+num2+"="+(num1*num2));
             }else{
                 alert("没有对应的运算法则")
             }
         </script>
    </head>
    <body>
    </body>
</html>

 if语句的嵌套

格式:

if(判断条件1){

            if(判断条件2){

                  javascript代码1  

                }else{

                    javascript代码2  

                }

           }else{

            if(判断条件3){

                     javascript代码3

                }else{

                     javascript代码4

                }

           }

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <script>
             var gra=70;
             if(gra>=60){
                 if(gra<=100){
                     alert("及格");
                 }else{
                     alert("不及格");
                 }
             }else{
                 if(gra>=0){
                     alert("不及格")
                 }else{
                     alert("不及格/出错")
                 }
             }
         </script>
    </head>
    <body>
    </body>
</html>

switch 语句

使用 switch 语句来选择要执行的多个代码块之一

格式:

switch(n) {

case 1: 执行代码块 1 break;

case 2: 执行代码块 2 break;

default: 与 case 1 和 case 2 不同时执行的代码

}

工作原理:首先设置表达式 n(通常是一个变量)。随后表达式的值会与结构中的每个 case 的值

做比较。如果存在匹配,则与该 case 关联的代码块会被执行。请使用 break 来阻止代码自动地向

下一个 case 运行

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <script>
            var num1=200;
            var num2=20;
            var op="+"
            switch(op){
               case "+": alert(num1+"+"+num2+"="+(num1+num2));
               case "-": alert(num1+"-"+num2+"="+(num1-num2));
               case "*": alert(num1+"*"+num2+"="+(num1*num2));break;
               case "/": alert(num1+"/"+num2+"="+(num1/num2));
               default: alert("没有对应的算法");
            }
         </script>
    </head>
    <body>
    </body>
</html>

2.JavaScript 循环

想一遍又一遍地运行相同的代码,并且每次的值都不同,那么使用循环是很方便的

JavaScript 支持不同类型的循环:

for - 循环代码块一定的次数

for/in - 循环遍历对象的属性

while - 当指定的条件为 true 时循环指定的代码块

do/while - 同样当指定的条件为 true 时循环指定的代码块

for 循环

for 循环是您在希望创建循环时常会用到的工具。下面是 for 循环的语法:

for (语句 1; 语句 2; 语句 3){
    被执行的代码块
}

语句 1

通常我们会使用语句 1 初始化循环中所用的变量 (var i=0)

语句 1 是可选的,也就是说不使用语句 1 也可以

语句 2

通常语句 2 用于评估初始变量的条件。如果语句 2 返回 true,则循环再次开始,如果返回 false,

则循环将结束

语句 3

通常语句 3 会增加初始变量的值。语句 3 也是可选的。语句 3 有多种用法。增量可以是负数 (i-

-),或者更大 (i=i+15)。语句 3 也可以省略(比如当循环内部有相应的代码时)

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <script>
            for( var i=1;i<=6;i++){
                document.write("<h"+i+">测试for语句</h"+i+">");
            }
            for( var i=6;i>=1;i--){
                document.write("<h"+i+">测试for语句</h"+i+">");
            }
         </script>
    </head>
    <body>
    </body>
</html>

for/In 循环

JavaScript for/in 语句循环遍历对象的属性

格式:

for(变量 in 数组/对象){

                需要被循环执行的javascript代码

            }

将in后面的数组/对象中的数据取出赋值给in前面的变量,

在需要被循环执行的javascript代码中使用从数组/对象中的取出的数据

for/in 循环访问数组的下标

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <script>
            var names=["zhangsan","lisi","wangwu"];
            for(var i=0;i<names.length;i++){
                document.write("<h1>"+names[i]+"</h1>");    
            }
         </script>
    </head>
    <body>
    </body>
</html>

for/in 循环访问对象的属性/方法名称

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <script>
            var student={
                stuid:1001,
                stuname:"lisi",
                stuage:20,
                test1: function(){},
                test2: function(){}

            }
            for(var i in student){
                document.write("<h4>"+i+"</h4>");
            }
         </script>
    </head>
    <body>
    </body>
</html>

while循环语句

while 循环会在指定条件为真时循环执行代码块。

语法

while (条件){
    需要执行的代码
}

格式上与for循环相比没有初始条件和循环增量/减量条件

如果需要初始条件【while循环语句之外】和循环增量/减量条件【{}中的最后一句】需要自己定义

 先执行判断条件---true--{需要被循环执行的javascript代码}---判断条件    ---false---结束

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <script>
            var i=1;
            while(i<=6){
                document.write("<h"+i+">测试while循环语句</h"+i+">");
                i++;
            }
            var j=6;
            while(j>=1){
                document.write("<h"+j+">测试while循环语句</h"+j+">");
                j--;
            }
        </script>
    </head>
    <body>
    </body>
</html>

如果忘记增加条件中所用变量的值,该循环永远不会结束。这可能导致浏览器崩溃

do/while 循环

do/while 循环是 while 循环的变体。该循环会在检查条件是否为真之前执行一次代码块,然后如果

条件为真的话,就会重复这个循环

语法

do{
    需要执行的代码
}
while (条件);

<!DOCTYPE html>
<html>

  <head>
    <meta charset="utf-8">
    <title></title>
    <script>
        var i=1;
        do{
            document.write("<h"+i+">测试do{}while()循环</h"+i+">");
            i++
        }while(i<=6)
    </script></head>
 <body>
 </body>
</html>

使用 do/while 循环。该循环至少会执行一次,即使条件为 false 它也会执行一次,因为代码块会在

条件被测试前执行。别忘记增加条件中所用变量的值,否则循环永远不会结束

for循环与while和do{}while的区别

1.形式上的不同

for循环有初始条件;判断条件;循环增量/减量,while和do{}while只有判断条件

while循环如果需要初始条件【while循环语句之外】和循环增量/减量条件【{}中的最后一句】需要

自己定义

do{}while()如果需要初始条件【do{}while()循环语句之外】和循环增量/减量条件【do{}中的最后一句】需要自己定义

2.具体执行过程

for循环需要明确循环次数

while循环/do{}while()循环不需要明确循环次数

while与do{}while的区别

while循环先判断后执行,do{}while循环先执行后判断

初始判断条件的值为false时,do{}while循环比while循环多执行一次

3.JavaScript break 和 continue 语句

break 语句用于跳出循环

continue 用于跳过循环中的一个迭代

break 语句

break 语句可用于跳出循环

break 语句跳出循环后,会继续执行该循环之后的代码(如果有的话)

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <script>
           var i=1;
           while(i<=6){
               if(i==3){
                   break;
               }
               document.write("<h"+i+">测试while循环语句--h"+i+"</h"+i+">");
                i++
           }
        </script>
    </head>
    <body>
    </body>
</html>

continue 语句

continue 语句中断循环中的迭代,如果出现了指定的条件,然后继续循环中的下一个迭代 

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <script>
           for(var i=1;i<=6;i++){
               if(i==3){
                   continue;
               }
               document.write("<h"+i+">测试while循环语句--h"+i+"</h"+i+">");
           }
        </script>
    </head>
    <body>
    </body>
</html>

JavaScript 错误

当 JavaScript 引擎执行 JavaScript 代码时,会发生各种错误

可能是语法错误,通常是程序员造成的编码错误或错别字

可能是拼写错误或语言中缺少的功能(可能由于浏览器差异)

可能是由于来自服务器或用户的错误输出而导致的错误

当然,也可能是由于许多其他不可预知的因素

JavaScript try 和 catch

try 语句允许我们定义在执行时进行错误测试的代码块

catch 语句允许我们定义当 try 代码块发生错误时,所执行的代码块

JavaScript 语句 try 和 catch 是成对出现的

语法格式:

try {

 ... //异常的抛出

} catch(e) {

 ... //异常的捕获与处理

} finally {

 ... //结束处理

}

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <script>
            /*
            try{
            var num1="10";
            var  res=num1/0;
            alert(res);
            }catch(e){
                alert(e.message);
            }finally{
                alert("程序执行有误错误都要执行的代码");
            }
            */

            //创建一个有指定存储空间的数组
            
            function  createArray(size){
                try{
                if(size<0){
                    throw "指定存储空间不能为负数"; 
                    }
                }catch(e){
                   alert(e);
                   size=0;
               }
                var arr=new Array(size);
                return arr;
            }
               
           var arrres= createArray(-4);
           alert(arrres.length);

            
        </script>
    </head>
    <body>
    </body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值