最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript?位運(yùn)算及實(shí)際應(yīng)用實(shí)例

 更新時(shí)間:2023年08月14日 08:37:36   作者:Never_Mind  
這篇文章主要為大家介紹了JavaScript位運(yùn)算及實(shí)際應(yīng)用實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

位運(yùn)算基礎(chǔ)

位運(yùn)算時(shí)所有操作數(shù)均被視為 32 位補(bǔ)碼二進(jìn)制串,不足補(bǔ) 0,超出則丟棄最高有效位。運(yùn)算結(jié)果也按補(bǔ)碼反轉(zhuǎn)形式返回

&:位 AND。僅當(dāng)兩個(gè)操作數(shù)對(duì)應(yīng)位均為 1 時(shí),該位的結(jié)果值為 1。例如:

const a = 120; // 0b000...1111000
const b = 11; //  0b000...0001011
a & b; // 8 = 0b000...1000
  • &=:位 AND 賦值。兩個(gè)操作數(shù)做位 AND 運(yùn)算,并將結(jié)果賦值給第一個(gè)操作數(shù)

|:位 OR。只要兩個(gè)操作數(shù)對(duì)應(yīng)位的其中一個(gè)為 1,該位的結(jié)果值便為 1。例如:

const a = 5; // 0b000...0101
const b = 3; // 0b000...0011
a | b; // 7 = 0b000...0111
  • |=:位 OR 賦值。兩個(gè)操作數(shù)做位 OR 運(yùn)算,并將結(jié)果賦值給第一個(gè)操作數(shù)

^:位 XOR。當(dāng)兩個(gè)操作數(shù)對(duì)應(yīng)位中僅有一個(gè)為 1 時(shí),該位的結(jié)果值為 1。例如:

const a = 5; // 0b000...0101
const b = 3; // 0b000...0011
a ^ b; // 6 = 0b000...0110
  • ^=:位 XOR 賦值。兩個(gè)操作數(shù)做位 XOR 運(yùn)算,并將結(jié)果賦值給第一個(gè)操作數(shù)
  • ~:位 NOT。將操作數(shù)按位取反。運(yùn)算結(jié)果滿足~x === -(x+1)

<<:左移位。將第一個(gè)操作數(shù)向左移動(dòng)指定位。左邊移出位被拋棄,右邊多出位由補(bǔ) 0。例如:

const a = 9; // 0b000...001001
const b = 2;
a << b; // 36 = 0b000...100100

>>:帶符號(hào)右移位。將第一個(gè)操作數(shù)向右移動(dòng)指定位。右邊移出位被拋棄,左邊多出位由原先最左值補(bǔ)齊

const a = 36; // 0b000...100100
const b = 2;
a >> b; // 9  =  0b000...001001
  • >>>:無(wú)符號(hào)右移位。將第一個(gè)操作數(shù)向右移動(dòng)指定位。右邊移出位被拋棄,左邊多出位由補(bǔ) 0

實(shí)際應(yīng)用

判斷整數(shù)是否為 2 的冪

function isPowerOfTwo(n) {
    return n > 0 && ((n - 1) & n) === 0;
}

判斷整數(shù)奇偶性

function isOdd(n) {
    return (n & 1) === 1;
}

標(biāo)志判斷

const canFly = 1 << 0;
const canRun = 1 << 1;
const canSwim = 1 << 2;
const canJump = 1 << 3;
let flags = 0;
// 添加標(biāo)志
flags |= canFly;
flags |= canJump;
// 判斷標(biāo)志
!!(flags & canFly); // true
!!(flags & canJump); // true
// 清除標(biāo)志
flags &= ~canFly;
!!(flags & canFly); // false

以上就是JavaScript 位運(yùn)算及實(shí)際應(yīng)用的詳細(xì)內(nèi)容,更多關(guān)于JavaScript 位運(yùn)算及實(shí)際應(yīng)用的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論

黔东| 蒲江县| 湘西| 旬阳县| 桓仁| 尼勒克县| 黄骅市| 涪陵区| 喀喇沁旗| 雷州市| 英山县| 西丰县| 遂溪县| 汉川市| 吉首市| 扶绥县| 石阡县| 萨迦县| 广宗县| 九台市| 凌海市| 邓州市| 余庆县| 阳新县| 鸡东县| 芮城县| 固原市| 宝鸡市| 青龙| 江油市| 西平县| 邯郸县| 铜梁县| 淅川县| 和田县| 汝州市| 津市市| 郧西县| 海原县| 西乌珠穆沁旗| 宝坻区|