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