位运算符可以用作设置对象属性的开关。假定某个对象有四个开关,每个开关都是一个变量。那么,可以设置一个四位的二进制数,它的每个位对应一个开关
var FLAG_A = 1; // 0001 var FLAG_B = 2; // 0010 var FLAG_C = 4; // 0100 var FLAG_D = 8; // 1000
上面代码设置A、B、C、D四个开关,每个开关分别占有一个二进制位
现在假设需要打开ABD三个开关,我们可以构造一个掩码变量
var mask = FLAG_A | FLAG_B | FLAG_D; // 0001 | 0010 | 1000 => 1011
上面代码对ABD三个变量进行“或运算”,得到掩码值为二进制的1011
//“或运算”可以确保打开指定的开关 flags = flags | mask;
//“与运算”可以将当前设置中凡是与开关设置不一样的项,全部关闭 flags = flags & mask;
//“异或运算”可以切换(toggle)当前设置,即第一次执行可以得到当前设置的相反值,再执行一次又得到原来的值 flags = flags ^ mask;
//“否运算”可以翻转当前设置,即原设置为0,运算后变为1;原设置为1,运算后变为0 flags = ~flags;
以上这篇javascript运算符——位运算符全面介绍就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
您可能感兴趣的文章: