javascript 逻辑操作符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 逻辑操作符相关的知识,希望对你有一定的参考价值。

JS按位与(&

0001

&

0011

 

---

0001

只有两个数的值为1时,才返回1

JS按位异或  ^

0101 (expression1) 
1100 (expression2) 
---- 
1001 (结果) 

当且仅当只有一个表达式的某位上为 1 时,结果的该位才为 1。否则结果的该位为 0。

JS按位或  |

0001

|

0011

 0011

只要两个数中有一个数为1,结果就为1,其他则为0。

按位非(~)

按位非就是求二进制的反码:

var num = 1; // 二进制 00000000000000000000000000000001

var num1 = ~num; // 二进制 11111111111111111111111111111110

我们知道,js中的数字默认是有符号的。有符号的32位二进制的最高位也就是第一位数字代表着正负,1代表负数,0代表整数。那到底11111111111111111111111111111110等于多少呢?最高位为1代表负数,负数的二进制转化为十进制:符号位不变,其他位取反加1。取反之后为10000000000000000000000000000001,加1之后为10000000000000000000000000000010,十进制为-2。

 






以上是关于javascript 逻辑操作符的主要内容,如果未能解决你的问题,请参考以下文章

30秒就能看懂的JavaScript 代码片段

常用Javascript代码片段集锦

48个值得掌握的JavaScript代码片段(上)

如何将此 JavaScript 代码片段翻译成 Parenscript?

javascript 代码片段

javascript JS-常用代码片段