一. 按位与运算符(&)
一般套路:判别一个数字的奇偶性,
例如:2&1 =>0
3&1 =>1
结果为0即为偶数,结果为1即为基数
二. 按位或运算符(|)
一般套路:向下取整 类似于Math.floor()
例如:3.2|0 =>3
3.9|0 =>3
三. 按位非运算符(~)
改变运算符号并且减一
例如:~2016 => -2017
~-2016 => 2015
扩展:~~: 利用符号进行的类型转换,转换成数字类型
例如:~~true =>1
~~undefined =>0
四.按位异或运算符(^)
一般套路:变量数据交换
var a=1,b=2;
a^=b;b^=a;a^=b; => a=2,b=1;
五. 左移运算符(<<)
例如:a<<b,将a左移b位相当于a乘以2的b次方
六. 右移运算符(>>)
例如:a>>b,将a右移b位相当于a除以2的b次方