zoukankan      html  css  js  c++  java
  • 逻辑分支

    程序的结构

     程序的结构:
            顺序结构:
                自上而下依次执行
            分支(选择)结构:
                有多条执行方案,可供选择
            循环结构:
                循环,重复执行某一段指定的代码
    
        分支,循环,都需要配合专用语句
    
        学习分支语句是什么?

    分支语句

    单分支语句

    单分支语句:if(){}

      if      语句名
        ()      条件:布尔值
        {}      执行语句
        
    demo:
        if(false){
            console.log("hello")
        }

    双分支语句

    双分支语句:if(){}else{}

     if      语句名
        ()      条件:布尔值
        {}      执行语句1:当条件为true时执行的语句
        else    语句名的一部分
        {}      执行语句2:当条件为false时执行的语句
    demo:
        if(false){
            console.log("hello");
        }else{
            console.log("world");
        }

    多分支语句

    多分支语句:

    双分支模拟的多分支:分支的嵌套
        var a = 6;
        if(a > 0){
            console.log("正数");
        }else if(a == 0){
            console.log("零")
        }else{
            console.log("负数");
        }

    多分支语句:switch( ){ }

    switch(){}
        switch      语句名
        ()          要判断的值
        {}          分支体
        demo:
            var a = 8;
            switch(a){
                case 0:
                    console.log("星期天");
                    break;
                case 1:
                    console.log("星期一");
                    break;
                case 2:
                    console.log("星期二");
                    break;
                default:
                    console.log("你输入的数字有误,请输入0~6之间的数字");
            }

    case的穿透特性 阻止穿透

    关键字:break:阻止穿透

    default表示以上case都不执行时,要执行的语句

     

    分支的简写方式

     

    逻辑运算符的其它用法

     

    或,||: 两边只要有一个true,即为true
    如果左边是true(或可以转成true),可以确定结果,结果为左边的值,停止执行
    如果左边是false(或可以转成false),那么||不能确定结果,继续向右检测,不管右边是什么,最终的值都是右边的值

     

    || 或
    或两边只要出现true就是true
    
        console.log( true || false );       // true
        console.log( false || true );       // true
        console.log( true || 0 );       // true
        console.log( 0 || true );       // true
        console.log( 0 || 1 );       // 1
        console.log( 1 || 0 );       // 1
    
        console.log(false || 0);    // 0
        console.log(0 || false);    // false
    
        console.log(true || 1);     // true
        console.log(1 || true);     // 1
    
        console.log(10 || 20);      // 10
        console.log(20 || 10);      // 20
    
        console.log( 0 || 10 );     // 10   // 0会被转化成false,10会被转化成true
        console.log( 10 || 0 );     // 10
        
    
    
    应用:
        var a = 10 || 20;
        var b = undefined || false;
        var c = NaN || null;
        console.log(a)              // 10
        console.log(b)              // false
        console.log(c)              // null

     

    同理,&&

     

    与,&&: 两边都为true,即为true
    如果左边是false(或可以转成false),停止执行,结果为左边的值
    如果左边是true(或可以转成true),那么&&不能确定结果,继续向右检测,不管右边是什么,最终的值都是右边的值

     

    console.log( true && false );   // false
        console.log( false && true );   // false
        console.log( true && 0 );       // 0
        console.log( 0 && true );       // 0
        console.log( 0 && 1 );       // 0
        console.log( 1 && 0 );       // 0
    
        console.log(false && 0);    // false
        console.log(0 && false);    // 0
    
        console.log(true && 1);     // 1
        console.log(1 && true);     // true
    
        console.log(10 && 20);      // 20
        console.log(20 && 10);      // 10
    
        console.log( 0 && 10 );     // 0
        console.log( 10 && 0 );     // 0
    
        var a = 10 && 20;
        var b = undefined && false;
        var c = NaN && null;
        console.log(a);             // 20
        console.log(b);             // undifined
        console.log(c);             // NaN

     

    其它--value特性

     

    表单input的value自身的特性:永远为字符型(不管你给它什么,只要进了页面就是字符)

     

     

     

  • 相关阅读:
    Hdu 1094 A+B for Input-Output Practice (VI)
    Hdu 1091 A+B for Input-Output Practice (III)
    Hdu 1092 A+B for Input-Output Practice (IV)
    Hdu 1087 Super Jumping! Jumping! Jumping!
    scala学习笔记2(类,继承,抽象类)
    scala学习笔记1(表达式)
    把以前写的几个Linux Framebuffer小工具放到github上了,直接去下吧,别找我要了
    一位台湾朋友刚建的一个FTK的论坛,欢迎加入讨论
    Linux高端内存的由来
    read系统调用深度剖析
  • 原文地址:https://www.cnblogs.com/wufenfen/p/11747823.html
Copyright © 2011-2022 走看看