javascript 按位非( ~ )运算符与 逻辑取反 (!)的区别

~:按位非执行的结果就是返回数字的反码

!:逻辑取反,false变成true,true变成false

~按位非
5二进制00000101,取反11111010,代表-6
所以~5=-6

按位非~   :

全部正整数的按位非是其本身+1的负数

全部负整数的按位非是其本身+1的绝对值

零的按位非是-1

逻辑非 ! :

!0    // true         (ps: 0、' ' 、null、undefined、false、NaN 在JavaScript中类型转换为false)

!!0     // false        (两 !! 等同于Bealoon( )  )

猜你喜欢

转载自blog.csdn.net/zd375005009/article/details/88998163