let a = 11; // 二进制为1011
let b = 7; // 二进制为0111
console.log(a & b); // 二进制结果为0011
console.log(a | b); // 二进制结果为1111
console.log(a ^ b); // 二进制结果为1100
console.log(~a); // 二进制结果为-1100
console.log(a << 2); // 二进制结果为101100
console.log(a >> 1); // 二进制结果为0101
输出结果如下:8 k8 _( f# D5 L+ n8 o" j/ B
30 H. M/ a" M6 Y. x
15 " h5 }# n( o2 ?5 f. M' i12 $ ?- R. s. D! {& B- ~% P$ j; d-12/ _- U1 w9 A0 Y, W
44 2 A, A2 i$ }3 r5 e1 f8 _" X5
& J/ @+ M0 I. m) ]; i) u" [需要注意的是,在进行位运算时,JavaScript会将数字用32位有符号整数的形式进行处理。因此,位移运算和非运算会产生32位的结果。在进行非运算时,需要注意数字的符号是否影响我们期望的结果。0 z. T( z0 z" @/ n' z/ h 结论- |: M& ^6 I: C
在JavaScript中,位运算符是一组强大的工具,它们可以用来对二进制数进行各种优化操作。在本篇博客中,我们介绍了位运算的基础知识,并且演示了如何使用这些运算符进行二进制数的操作。在实际应用中,需要根据实际需要选择合适的位运算符,并且需要注意位运算的数据类型以及结果是否符合我们预期。