0
我想检查一个标志是否在我的枚举值中设置。 我的代码有什么问题?JavaScript:枚举标志检查
JavaScript的代码
var flags = {
FOO: 1,
BAR: 2,
BAZ: 4,
FUM: 8,
ERROR: 65
}
var value = flags.FOO | flags.BAR;
if (value & flags.ERROR){
alert("ERROR IS SET, but this is not true");
}
65? 65是1 + 64。如果你想要位掩码值,那么'ERROR'必须是'64'。 – 2013-03-21 15:32:41
现在按预期工作的是什么? 'value&flats.ERROR'共享'FOO'位(2^0),这意味着条件成立。 – Bergi 2013-03-21 15:36:11