逻辑运算符 · JavaScript全栈

本节学习目标

  • 掌握&&||!逻辑运算符的运算规则

本节内容

逻辑与运算符(&&)

对两个表达式执行逻辑与运算(相当于英语中 and 的意思)

  • 语法: 运算结果 = 表达式1 && 表达式2
    • 运算结果可以是任何变量,这个变量相当于一个容器,将运算结果放在这个容器里面
    • and 并且 的意思,所以只有表达式1表达式2 都是正确(也就是都为真 true )的时候,返回值才为 true ;
    • 用列表表示为:
运算结果 表达式1 表达式2
true true true
false true false
false false true
false false false
  • 从上面表格也可以看出来,当 表达式1false 时,运算结果就为false(表达式2是什么就不用看了,相当于直接被忽略了),否则运算结果的值就跟 表达式2 的结果保持一致
  • 这种现象也叫做 短路运算

    想更深了解短路运算的童鞋欢迎自行Google

逻辑或运算符(||)
  • 语法: 运算结果 = 表达式1 || 表达式2
    • 运算结果可以是任何变量,这个变量相当于一个容器,将运算结果放在这个容器里面
    • or或者 的意思,所以只要表达式1表达式2 当中有一个表达式的返回值为 true ,运算结果就为 true;只有当两个表达式都是 false 的时候,运算结果才是 false
    • 用列表表示为:
运算结果 表达式1 表达式2
true true true
true true false
true false true
false false false
  • 从上面表格也可以看出来,只要表达式1true 时,运算结果就为 true (可怜的表达式2,就这样被无情忽略了 - _ - );否则运算结果的值就跟表达式2的结果保持一致
  • 这种现象跟上面我们提过的逻辑与运算 && 是同一种现象,应该还记得吧,这种现象叫做 短路运算
逻辑非运算符(!)

对一个表达式执行逻辑求反操作

  • 语法: 运算结果 = !表达式

    • 运算结果的含义跟上面两种是一样的哈
    • 不是 否定 的意思,所以结果跟表达式相反就好啦

      这里可以用很形象的说法来解释: 面对调皮的捣蛋鬼 妈妈们经常会笑着说一句: 让你往东你偏往西( ^ _ ^) 想起来《三国演义》的一句评语: 大奸似忠,大伪似真

    • 用列表表示为:

运算结果 表达式1
true false
false true
谁是 true 谁是 false

能够转换为 false 的表达式有:null , NaN , 0 , 空字符串("") , undefined

具体原因呢,现在不用深究哈

其他推荐资料:

本节练习

  • 写出下面逻辑表达式的结果:
    • "hello" && 88
    • null && 66
    • " " || 88
    • undefined || true
    • !" "
    • !8866

原文:大专栏  逻辑运算符 · JavaScript全栈


猜你喜欢

转载自www.cnblogs.com/petewell/p/11611810.html
今日推荐