JavaScript中位运算的巧妙应用
了解运算符
- ~-按位非
- &-按位与
- |-按位或
- ^-按位异或
- <<-无符号左移
- <<<-有符号左移
- >>-无符号右移
- >>>-有符号右移
*可以根据箭头指向来区分左移还是右移
应用场景
1. 使用~~、>>、<<、|来向下取整
~~11.11 is 11
11.11>>0 is 11
11.11<<0 is 11
11.11 | 0 is 11
2. 使用 !! 将数字转为布尔值
!!1 is true
3.使用 & 判断奇偶性
&1==1 is odd:判断奇数
&1==0 is even:判断偶数
4. 使用右移来实现除数
x / 2 is x >> 1
5.使用按位与来实现取模
x % 2 is x & 1