JS封装的几个位操作函数

function getBit(val,bit){
    /*1 return true; 0 return false*/
    return ((val & (0x1 << bit)) >> bit)==1;
}
function setBit(val,bit){
    return val | (0x1 << bit)
}
function clearBit(val,bit){
    var a=255;
    for(var i=0;i<=bit;i++){
        a=a<<1;
        if(i>0)a++;
    }
    return val & a;
}
function reverseBit(val,bit){
    if(getBit(val,bit)) return clearBit(val,bit);
    else return setBit(val,bit);
}

你可能感兴趣的:(JS封装的几个位操作函数)