各位老師好!比較運算符和邏輯運算符有什么區(qū)別呀?
各位老師好!比較運算符和邏輯運算符有什么區(qū)別呀?
慕粉5341116
2019-09-23 10:03:38
TA貢獻436條經(jīng)驗 獲得超108個贊
比較顧名思義,是用來比較兩個值的,所以“>” "<" "==" 就是比較運算符,比如“a>b”指的是a大于b,運算的結(jié)果是布爾值,也就是true或者false,意思也很直白,就是比較的結(jié)果是不是對的,真就是對的意思。比如
1?>?2?//?false,所以這個比較的結(jié)果是錯誤的,好比數(shù)學上說的這是假命題
邏輯運算符是用來布爾運算的,它同比較運算符一樣也是兩個值的運算,“&&”“||”"!"對應的就是邏輯與、或、非,比如“a&&b”就是a與b,這個概念是來自物理學上的電路的,感興趣可以去了解下,數(shù)字電路有0和1,“與門”的意思是都為1的時候輸出信號“1”,而在計算機中,布爾型有true和false,正好對應1和0,所以“a&&b”的結(jié)果取決于兩個值的真和假,都為真時結(jié)果為真,而在JS中,真值和假值不一定就是true和false,JS是動態(tài)類型的,會有隱式的類型轉(zhuǎn)換,所以你可能會看到
"0"&&1?//?為TRUE var?a?=?{x:1} a?&&?1?//?TRUE
TRUE的情況比較多,你可以搜一下JS中的假值都有哪些。
舉報