weigiaogiao 2019-02-12 10:10 采纳率: 50%
浏览 1000
已采纳

问一下js中为什么5&&4 = 4 5&&4&&5=5

5&&4 = 4
那 5&&4&&5 = 5
这不是位运算把? 是两个数不同与运算等于后面的那个数?

  • 写回答

4条回答 默认 最新

  • 天际的海浪 2019-02-12 15:40
    关注

    &&和||是逻辑运算符,&和|才是位运算符。
    逻辑运算符的返回值并不是true或false,逻辑运算符的工作原理是:

    表达式A && 表达式B :如果A的值为false(或A的值可以被当做为false)就返回A的值并且不执行表达式B,否则执行表达式B并且返回B的值
    表达式A || 表达式B :如果A的值为true (或A的值可以被当做为true) 就返回A的值并且不执行表达式B,否则执行表达式B并且返回B的值
    在javascript中0 "" null undefined会被当做为false,其它的值都可以被当做为true。

    所以 5&&4 中5可以被当做为true,就返回&&右边的4

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?