逻辑位运算符 与移位运算符
位运算符有7个,分为两类:
逻辑位运算符:位与 (&)、位或 (|)、位异或(^)、非位(~)
移位运算符:左移 (<<) 、右移 (>>)、无符号右移(>>>)
逻辑运算符
我们给定 x=6且y=3,若都为布尔则:下表解释了逻辑运算符
运算符 | 描述 | 例子 |
&& | 与 | (x<10 &&y>1)为true |
|| | 或 | (x == 5Il y == 5)为 false |
! | 非 | !(x == y)为 true |
若不是比较判断则记住公式约定
真与真,出右真
真或真,出左真
真与假,则出假
真或假,则出真
运算符 | 描述 | 例子 |
&& | 与 | ([] &&[]) 取右[]&& undefined = undefined |
|| | 或 | ([]||[]) 取左[]|| undefined = [] |
下面我们来尝试读一下 代码:
!+[] true !+[]+!+[] 2 [!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]] '22' ![] false !+[] true false+[] 'false' !+[]+[] 'true' (!+[]+[])[!+[]+!+[]] 'u'