JavaScript 逻辑运算符

一 、逻辑与 &&

        两边的值都为true,结果才为 true,如果只要有一侧的值为false,结果就为 false;

  console.log(2 > 1 && 1 < 2); // true
  console.log(3 > 2 && 1 > 2); //false

     1.1 逻辑与 && 短路运算(逻辑中断)

           语法:表达式(值)1  &&  表达式(值)2

           如果有多个表达式 不是布尔值,而是一些值或者表达式时,如果发现左侧的值是假的,就不再继续运算右侧的值;

       1.1.1 如果第一个表达式(值) 的值为 真,则返回表达式2的值

    console.log(123 && 231); // 231
    console.log(1 + 1 && 3 * 2) // 6

       1.1.2 如果第一个表达式(值) 的值为 假,则返回表达式1 的值

    console.log(0 && 2); // 0 
    console.log(1 - 1 && 1 * 3); // 0

二 、逻辑或  ||

        两边的值都为false,结果才为 false, 如果只要有一侧的值为 true,结果就为 true ;

   console.log(2 > 3 || 3 < 2); //false
   console.log(4 > 1 || 13 < 8); // true

     2.1  逻辑或 ||  短路运算(逻辑中断)

        语法:表达式(值)1  ||  表达式(值)2

        如果有多个表达式 不是布尔值,而是一些值或者表达式时,如果发现左侧的值是假的,就返回表达式2的值,如果左侧为真,则返回表达式1的值;

        2.1.1  如果第一个表达式的值为真,则返回表达式1的值;

    console.log(123 || 231); // 123
    console.log(1 + 1 || 3 * 2) // 2

        2.1.2  如果第一个表达式的值为假,则返回表达式2的值;

    console.log(0 || 2); // 2
    console.log(1 - 1 || 1 * 3); // 3

三 、逻辑非 

        取反符,用来取一个布尔值相反的值,如 true的相反值就是 false;

   console.log(!true); // false
   console.log(!false); // true
   console.log(!4<2); // true 4<2 本身为false,但是取反值就为 true
发布了75 篇原创文章 · 获赞 7 · 访问量 6882

猜你喜欢

转载自blog.csdn.net/HelloWord176/article/details/104536590
今日推荐