逻辑运算符

380 阅读1分钟

逻辑运算符

&&与、||或、!非

与:&&


作用在两个条件之间
   1.当第一个条件转换为Boolean为false,返回第一个值;
   2.当第一个条件转换为Boolean为true,返回第二个值;
 var num1 = 0 && 3;
 var num2 = 1 && 3;
 
 console.log(num1); //0
 console.los(num2); //1

或:||


作用在两个条件之间
    1.当第一个条件转换为Boolean为false,则返回第二个值;
    2.当第一个条件转换为Boolean为true,则返回第一个值;
 var num1 = 0 || 3;
 var num2 = 1 || 3;
 
 console.log(num1); //3
 console.log(num2); //1

非:!


作用在一个条件上,所以也是一元运算符的成员之一,表示对该操作数进行取反操作,所以会对该数据进行隐式类型转换为布尔值,然后取反,最后返回一个Boolean值。
    1.如果操作数式Object类型,结果返回false;(所有对象均为true)
    2.如果操作数是一个空字符串,结果返回true
    3.如果是非空的字符串,结果返回false
    4.如果是Number数值0,结果返回true
    5.如果是NaN,返回true
    6.如果是非0数值,返回false
    7.如果是null或undefined,返回true
console.log(!{});           //false
console.log(!"");           //true
console.log(!'javascript'); //false
console.log(!0);            //true
console.log(!NaN);          //true
console.log(!123);         //false
console.log(!null);        //true
console.log(!undefined);  //true

!运算符,并不是只可以写一个,而是可以在操作数前写多个