Javascript中的 “&” 和 “|” 详解

在Javascript编程中,常常需要对二进制数进行位运算操作。而位运算符中最常用的两个是“&”和“|”,它们分别表示按位与和按位或运算。本文将深度解析这两个运算符的使用方法,希望能为初学者提供指导意义。

按位与运算符“&”

按位与运算符“&”用于将两个二进制数的每一位进行比较,如果两个二进制数的某一位都为1,则结果为1;否则,结果为0。例如:

- - - -- -

对于上述语句,Javascript会先将5和3转换成二进制数101和011,然后进行按位与操作,得到001,即1。

按位与运算符在实际开发中广泛应用于以下场景:

清零操作

通过将一个数与全0二进制数进行按位与操作,可以将这个数的所有位都清零。例如:

--- --- - -------
--- -- ------- -- -

判断奇偶性

通过将一个二进制数的最后一位与1进行按位与操作,可以判断该数是奇数还是偶数。例如:

-------- ---------- -
  ------ ---- - -- --- --
-
--------- -- ----
--------- -- -----

按位或运算符“|”

按位或运算符“|”用于将两个二进制数的每一位进行比较,如果两个二进制数的某一位都为0,则结果为0;否则,结果为1。例如:

- - - -- -

对于上述语句,Javascript会先将5和3转换成二进制数101和011,然后进行按位或操作,得到111,即7。

按位或运算符在实际开发中广泛应用于以下场景:

设置某一位为1

通过将一个数与全1二进制数进行按位或操作,可以将这个数的某一位设置为1。例如:

--- --- - -------
--- -- ------- -- --

并集操作

通过将两个集合(用二进制数表示)进行按位或操作,可以得到这两个集合的并集。例如:

----- ---- - --- -- ---
----- ---- - --- -- ---
----- --- - --- ------------- ----------
--------- -- --- -- -- -- --

以上是按位或运算符的一种实现方式,在实际开发中也可以使用ES6 Set对象的union方法实现集合的并集操作。

总结

本文主要介绍了按位与运算符“&”和按位或运算符“|”在Javascript中的使用方法,以及它们在实际开发中的应用场景。需要注意的是,在进行位运算操作时,要保证操作的两个数都是整数类型,否则结果可能出现意外错误。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/768