前端基础 JavaScript 第四章 逻辑控制语句 ----暑假学习第十二天

 

第四章 逻辑控制语句

4.1 复合语句

用大括号括起来的,由几个简单语句组成的js语句段,这样的语句称为复合语句

4.2 if语句

同java的if语句

eg:

if(typeof(age)!="number"){
    type=typeof(age);
    document.writeln("年龄应该是数字型,而您的输入内容为"+age+",类型为"+type);
}

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

同java if...else语句

eg:

if(typeof(age)!="number"){
    type=typeof(age);
    document.writeln("年龄应该是数字型,而您的输入内容为"+age+",类型为"+type);
}else{
    document.writeln("您的年龄是:"+age);
}

4.2.3 else if 语句

同java 

if(e1){
    action1;
}else if(e2){
    action2;
}else{
    action3;
}

4.2.4 if语句的嵌套

4.3 switch语句

同java

eg:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>switch语句</title>
</head>
<body>
<script language="JavaScript">

    function f(score) {
        switch (score){
            case "A":
                document.writeln("优秀 90~100分");
                break;
            case "B":
                document.writeln("良好 80~89分");
                break;
            case "C":
                document.writeln("及格 60~79分");
                break;
            case "D":
                document.writeln("不及格 低于60分");
                break;
            default:
                document.writeln("输入有误!")
        }
        document.writeln("<br>");
    }

    f("A");
    f("B");
    f("C");
    f("D");
    f("E");

</script>
</body>
</html>

运行结果:

4.4 while语句

同javawhile语句

eg:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>while语句</title>
</head>
<body>
<script language="JavaScript">
    //while语句求 1+2+...+100=?
    var sum=0,i=1;
    while(i<=100){
        sum+=i;
        i++;
    }
    document.writeln("1+2+3+...+100="+sum+"<br>");
</script>
</body>
</html>

运行结果:

4.5 do...while语句

同java

eg:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>do...while循环</title>
</head>
<body>
<script language="JavaScript">
    var sum=0,i=1;
    do{
        sum+=i;
        i++;
    }while(i<=100);
    document.writeln("1+2+3+...+100="+sum);
</script>
</body>
</html>

运行结果同上。

4.6 for语句

同java 

eg:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>for 语句</title>
</head>
<body>
<script language="JavaScript">
    var sum=0;
    for(var i=1;i<=100;i++){
        sum+=i;
    }
    document.writeln("1+2+3+...+100="+sum);
</script>
</body>
</html>

运行结果同上

4.7 for...in语句

for(i in object){
    循环体语句;
}

object是一个对象名、或者计算结果为对象的表达式

for...in语句遍历对象的每一个属性,将属性名作为字符串赋给i

eg:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>for...in遍历属性</title>
</head>
<body>
<script language="JavaScript">
    var n=1;
    for(i in document){
        document.writeln((n++)+"、属性名称:"+i+";属性的值:"+document[i]+"<br>")
    }

</script>
</body>
</html>

运行结果:

一共有245个属性

数组也是对象,for...in也可以像java那样遍历数组

eg:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>for...in遍历数组</title>
</head>
<body>
<script language="JavaScript">
    var a=new Array(10);
    for(var i=0;i<a.length;i++){
        a[i]=i*i;
    }
    for( var i in a){
        document.writeln("a["+i+"]="+a[i]+"<br>")
    }
</script>
</body>
</html>

运行结果:

4.8 标签语句(给代码段起名字,方便goto和break、continue)

任何语句如果在前面加上标识符和冒号都可以构成标签语句,例如switch语句中的case标签和default标签就是特殊的标签语句

label:
    statement

 label是标签名,可以是任何合法标识符。statement可以是任何形式的语句块。(应用在4.9)

4.9 break和continue语句

和java几乎完全一样,此处举例讲讲和label搭配使用

eg:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>break~continue</title>
</head>
<body>
<script language="JavaScript">
    loop:
    for(var i=0;i<2;i++){
        for(var j=0;j<5;j++){
            if(j==3) break loop;
            document.writeln("("+i+","+j+")"+"<br>");

        }
    }
    document.writeln("<hr>");
    for(var i=0;i<2;i++){
        for(var j=0;j<5;j++){
            if(j==3) break;
            document.writeln("("+i+","+j+")"+"<br>");

        }
    }

</script>
</body>
</html>

运行结果:

4.10 异常处理语句

不像java分类型,直接捕获,直接抛出,异常信息直接赋值给一个新变量

try{
    语句
    可以自己throw
}catch(e){
    document.writeln(e);//简单粗暴输出异常信息
}

eg:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>exception</title>
</head>
<body>
<script language="JavaScript">
    function divI(i) {
        try{
            if(i==10){
                throw "我自己抛出异常,就是不让自己除自己";
            }
            document.writeln(10/i+"<br>");
        }catch (e) {
            document.writeln(e);
        }
    }
    divI(5);
    divI(0);
    divI(2);
    divI(10);

</script>
</body>
</html>

运行结果:

4.11其他语句

4.11.1 return 语句

返回一个值    结束函数

4.11.2 with语句

通过with表达式可以使用对象的属性和方法,而不需要每一次都输入对象的名称。语法如下:

with(object){
    操作对象属性;
    操作对象方法;
}

例:

with(document.forms[0]){
    name.value="";
    password.value="";
}

上面的代码等价于:

document.forms[0].name.value="";
document.forms[0].password.value="";

使用with语句省略了重复录入document.forms[0]的麻烦。然而使用with语句运行效率低,程序执行慢。建议使用变量替换法替代with,效率更高:

var form =document.forms[0];
form.name.value="";
form.password.value="";

猜你喜欢

转载自blog.csdn.net/hza419763578/article/details/81085981
今日推荐