javascript测试是否存在两个标志中的任何一个

时间:2015-04-02 12:39:19

标签: javascript operators bit flags

我有这个简单的代码:

var A = 1, B = 2, C = 4, D = 8;

var x = 4;

是否有相当于此代码:

if(x == C || x == D){

}

但只使用位运算符(单个条件)?

1 个答案:

答案 0 :(得分:3)

您可以测试C和D的组合:

if (x & (C | D))

当在C或D中设置的任何位也在x中设置时,结果将为非零。