逻辑运算符的运用

起首晓得下能够转换成false的值

  • null 注:localStorage.getItem() 与 sessionStorage.getItem() 猎取一个不存在的值返回的也为null
  • NaN
  • 0
  • 空字符串 ” “
  • undefined

推断前提返回true或许false

if (a && a.master && a.master.name) {} // 假如这三个属性都为true值,实行if逻辑
if (a || b) {} // 假如a或许b为true值,实行if逻辑。
if(a || b && c) // 此时须要注重运算递次 是先算 a||b 然后运用它的值 && c  
if(a || (b && c)) //注重(b && c)

推断并返回前提对象

  • && 推断中,推断值都为 true,返回末了一个推断值;推断值中有 false

值,返回第一个 false 值。

  • || 推断中,推断值都为 true,返回第一个推断值;推断值中有 true 值也有 false 值,返回第一个为 true 的推断值;假如推断值都为 false,返回末了面的 false 值。

运用两个非

两个感叹号会确保参数为非值时只能为false或许true,不会是0、空字符串、undefined等非值。

n1 = !!true                   // 返回 true
n2 = !!{}                     // 返回 true: 任何对象都是true,空对象也是
n3 = !!(new Boolean(false))   // 返回 false
n4 = !!false                  // 返回 false
n5 = !!""                     // 返回 false
n6 = !!Boolean(false)         // 返回 false
    原文作者:fsme
    原文地址: https://segmentfault.com/a/1190000019086841
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞