zoukankan      html  css  js  c++  java
  • 逻辑运算符

     1 <!DOCTYPE html>
     2 <html>
     3     <head>
     4         <meta charset="UTF-8">
     5         <title></title>
     6         <script type="text/javascript">
     7             
     8             /*
     9              * JS中为我们提供了三种逻辑运算符
    10              * ! 非
    11              *     - !可以用来对一个值进行非运算
    12              *     - 所谓非运算就是值对一个布尔值进行取反操作,
    13              *         true变false,false变true
    14              *     - 如果对一个值进行两次取反,它不会变化
    15              *     - 如果对非布尔值进行元素,则会将其转换为布尔值,然后再取反
    16              *         所以我们可以利用该特点,来将一个其他的数据类型转换为布尔值
    17              *         可以为一个任意数据类型取两次反,来将其转换为布尔值,
    18              *         原理和Boolean()函数一样
    19              * 
    20              * && 与
    21              *     - &&可以对符号两侧的值进行与运算并返回结果
    22              *     - 运算规则
    23              *         - 两个值中只要有一个值为false就返回false,
    24              *             只有两个值都为true时,才会返回true
    25              *         - JS中的“与”属于短路的与,
    26              *             如果第一个值为false,则不会看第二个值
    27              * 
    28              * || 或
    29              *     - ||可以对符号两侧的值进行或运算并返回结果
    30              *     - 运算规则:
    31              *         - 两个值中只要有一个true,就返回true
    32              *             如果两个值都为false,才返回false
    33              *        - JS中的“或”属于短路的或
    34              *             如果第一个值为true,则不会检查第二个值
    35              */
    36             
    37             //如果两个值都是true则返回true
    38             var result = true && true;
    39             
    40             //只要有一个false,就返回false
    41             result = true && false;
    42             result = false && true;
    43             result = false && false;
    44             
    45             //console.log("result = "+result);
    46             
    47             //第一个值为true,会检查第二个值
    48             //true && alert("看我出不出来!!");
    49             
    50             //第一个值为false,不会检查第二个值
    51             //false && alert("看我出不出来!!");
    52             
    53             //两个都是false,则返回false
    54             result = false || false;
    55             
    56             //只有有一个true,就返回true
    57             result = true || false;
    58             result = false || true ;
    59             result = true || true ;
    60             
    61             //console.log("result = "+result);
    62             
    63             //第一个值为false,则会检查第二个值
    64             //false || alert("123");
    65             
    66             //第一个值为true,则不再检查第二个值
    67             //true || alert("123");
    68             
    69             
    70             
    71             var a = false;
    72             
    73             //对a进行非运算
    74             a = !a;
    75             
    76             //console.log("a = "+a);
    77             
    78             var b = 10;
    79             b = !!b;
    80             
    81             //console.log("b = "+b);
    82             //console.log(typeof b);
    83             
    84         </script>
    85     </head>
    86     <body>
    87     </body>
    88 </html>
     1 <!DOCTYPE html>
     2 <html>
     3     <head>
     4         <meta charset="UTF-8">
     5         <title></title>
     6         
     7         <script type="text/javascript">
     8             
     9             /*
    10              * && || 非布尔值的情况
    11              *     - 对于非布尔值进行与或运算时,
    12              *         会先将其转换为布尔值,然后再运算,并且返回原值
    13              *     - 与运算:
    14              *         - 如果第一个值为true,则必然返回第二个值
    15              *         - 如果第一个值为false,则直接返回第一个值
    16              * 
    17              *     - 或运算
    18              *         - 如果第一个值为true,则直接返回第一个值
    19              *         - 如果第一个值为false,则返回第二个值
    20              * 
    21              */
    22             
    23             //true && true
    24             //与运算:如果两个值都为true,则返回后边的
    25             var result = 5 && 6;
    26             
    27             
    28             //与运算:如果两个值中有false,则返回靠前的false
    29             //false && true
    30             result = 0 && 2;
    31             result = 2 && 0;
    32             //false && false
    33             result = NaN && 0;
    34             result = 0 && NaN;
    35             
    36             
    37             //true || true
    38             //如果第一个值为true,则直接返回第一个值
    39             result = 2 || 1;
    40             result = 2 || NaN;
    41             result = 2 || 0;
    42             
    43             //如果第一个值为false,则直接返回第二个值
    44             result = NaN || 1;
    45             result = NaN || 0;
    46             
    47             result = "" || "hello";
    48             
    49             result = -1 || "你好";
    50             
    51             
    52             console.log("result = "+result);
    53             
    54         </script>
    55         
    56     </head>
    57     <body>
    58     </body>
    59 </html>
  • 相关阅读:
    Swift3 重写一个带占位符的textView
    Swift3 使用系统UIAlertView方法做吐司效果
    Swift3 页面顶部实现拉伸效果代码
    Swift3 倒计时按钮扩展
    iOS 获取当前对象所在的VC
    SpringBoot在IDEA下使用JPA
    hibernate 异常a different object with the same identifier value was already associated with the session
    SpringCloud IDEA 教学 番外篇 后台运行Eureka服务注册中心
    SpringCloud IDEA 教学 (五) 断路器控制台(HystrixDashboard)
    SpringCloud IDEA 教学 (四) 断路器(Hystrix)
  • 原文地址:https://www.cnblogs.com/lvjianqun/p/10302656.html
Copyright © 2011-2022 走看看