Selles õpetuses saate näidete abil õppida JavaScripti bitipõhiseid operaatoreid ja nende tüüpe.
JavaScripti bitipõhised operaatorid
Bitipõhised operaatorid käsitlevad selle operande 32-bitiste kahendarvude (nullid ja ühed) kogumina ning täidavad toiminguid. Tulemust näidatakse aga kümnendarvuna.
| Operaatorid | Nimi | Näide | 
|---|---|---|
& |  Pikkade kaupa JA | x & y |  
| |  Piki VÕI | x | y |  
^ |  Piki XOR | x y |  
~ |  Bititi EI | ~x |  
<< |  Vasak Shift | x << y |  
>> |  Märke levitav parempoolne nihe | x>> y |  
>>> |  Parempoolne nihe nulliga | x>>> y |  
Märkus . Minimaalsed ja maksimaalsed täisarvud, mis on esindatavad 32-bitise allkirjastatud numbri kaudu, on -2147483648 kuni 2147483647.
JavaScripti biti kaupa JA
Biti kaupa &tagastab AND 1, kui mõlema operandi vastavad bitid on 1, tagastab see 0 .
| Operand 1 | Operand 2 | JA operatsioon | 
|---|---|---|
| 0 | 0 | 0 & 0on 0 |  
| 0 | 1 | 0 & 1on 0 |  
| 1 | 0 | 1 & 0on 0 |  
| 1 | 1 | 1 & 1on 1 |  
Heidame pilgu kahe täisarvu 12 ja 25 bitipõhisele toimingule .
Binaararvus 12 = 01100 25 = 11001 // Pikkade JA 12 ja 25 toimimine 00001100 ja 00011001 --------- 00001000 = 8 (kümnendkohaga)
Märkus : teisendades 12 -bitiseks binaarseks annab meile 00000000000000000000000000001100ja 25 annab 00000000000000000000000000011001. Kuid lihtsuse huvides oleme eelnevad nullid eemaldanud.
Näide 1: bitipõhine JA operaator
 // bitwise AND operator example let a = 12; let b = 25; result = a & b; console.log(result); // 8 
Ülaltoodud programmis
- Binaarväärtus 12 on
00000000000000000000000000001100 - Binaarväärtus 25 on 
00000000000000000000000000011001. - Kui tehakse bitipõhine JA- toiming, on binaarne tulemus, 
00000000000000000000000000001000mis teisendatakse kümnendarvuks 8. 
JavaScripti bitipõhine VÕI
Biti kaupa |tagastab OR 1, kui ühe operandi kumbki vastav bitt on 1, tagastab 0 .
| Operand 1 | Operand 2 | VÕI operatsioon | 
|---|---|---|
| 0 | 0 | 0 | 0on 0 |  
| 0 | 1 | 0 | 1on 1 |  
| 1 | 0 | 1 | 0on 1 |  
| 1 | 1 | 1 | 1on 1 |  
Heidame pilgu kahe täisarvu 12 ja 25 bitipõhisele VÕI toimingule .
Binaarses vormis 12 = 01100 25 = 11001 // Piki kaupa VÕI operatsioon 12 ja 25 00001100 | 00011001 -------- 00011101 = 29 (kümnendkohaga)
Näide 2: biti kaupa VÕI operaator
 // bitwise OR operator example let a = 12; let b = 25; result = a | b; console.log(result); // 29
Kui tehakse bitipõhine VÕI operatsioon, on binaarne tulemus, 00000000000000000000000000011101mis teisendatakse kümnendarvuks 29.
JavaScript Bitwise XOR
Bititi XOR ^tagastab 1, kui vastavad bitid on erinevad, ja 0, kui vastavad bitid on samad.
| Operand 1 | Operand 2 | Operatsioon XOR | 
|---|---|---|
| 0 | 0 | 0 0on 0 |  
| 0 | 1 | 0 1on 1 |  
| 1 | 0 | 1 0on 1 |  
| 1 | 1 | 1 1on 0 |  
Binaarses väärtuses 12 = 01100 25 = 11001 // Toimingud bitide kaupa XOR-ga 12 ja 25 00001100 00011001 -------- 00010101 = 21 (kümnendkohaga)
Näide 3: Operaator Bitwise XOR
 // bitwise XOR operator example let a = 12; let b = 25; result = a b; console.log(result); // 21
Kui teostatakse XOR-i bittide kaupa , on binaarne tulemus, 00000000000000000000000000010101mis teisendatakse kümnendarvuks 21.
JavaScripti bititi EI
Biti kaupa EI ~pöörab bitti ümber ( 0 saab 1 , 1 saab 0 ).
Binaarses vormis 12 = 000000000000000000000000000000001100 // ei toimu 12 ~ 000000000000000000000000000000000000 -------------------------------- 1111111111111111111111111111110011 = -13 (kümnendkohaga)
11111111111111111111111111110011Kümnendarvuks teisendamise korral oleks väärtus 4294967283. Kuid bitipõhise operaatori kasutamisel arvutatakse väärtus signeeritud 2 komplemendi vormingus, välja arvatud parempoolne nihe.
2 komplemendi arvutamiseks pööratakse bitid (1 komplement) ja lisatakse seejärel 1 . Näiteks,
13 in binary: 00000000000000000000000000001101 1's complement of 13: 11111111111111111111111111110010 2's complement of 13: 11111111111111111111111111110010 +1 --------------------------------- 11111111111111111111111111110011
Notice the 2's complement of 13 (i.e. -13) is 11111111111111111111111111110011. This value is equivalent to the bitwise NOT of 12.
Example 4: Bitwise NOT Operator
 // bitwise NOT operator example let b = 12; result = ~b; console.log(result); // -13
When bitwise NOT operation is performed, the binary result will be 11111111111111111111111111110011 which converts into the decimal value -13.
Note: Bitwise NOT of a number x gives -(x + 1). Notice above ~2 gives -3.
JavaScript Left shift
Vasakul nihe operaator <<, vasakul operandi täpsustab arvu ja parempoolne operand Määrab tuleb nihutada vasakule. Paremale lisatakse nullbitid ja vasakult liigsed bitid visatakse ära.
 Üks natuke vasakut nihet JavaScripti
Näiteks,
 let a = 8; let b = 1; result = a << b; // 1 ( 00000000000000000000000000010000 ) console.log(result);
JavaScripti märkidega leviv parempoolne nihe
Parempoolse >>nihkeoperaatoris määrab esimene operand numbri ja teine operand paremale nihutatava numbri. Parempoolsed liigsed bitid visatakse ära. Vasakpoolseima biti koopiad nihutatakse vasakult, seega levib nimemärk.
 Üks natuke paremnihe koos märkide levitamisega täida JavaScript
Näiteks,
 let a = 8; let b = 1; // 11111111111111111111111111111101 let c = -3; result = a>> b; result1 = c>> b; // 4 (00000000000000000000000000000100) console.log(result); // -1 (11111111111111111111111111111111) console.log(result1); 
JavaScripti nullitäitmine paremale
Nulltäitega paremnihe >>>nihutab operandi paremale, täites nullibitid vasakule. Parempoolsed liigsed bitid visatakse ära.
 Ühe bitiga parem nihe nulliga täitke JavaScript
Näiteks,
 let a = 8; let b = 1; let c = -3; result = a>>> b; result1 = c>>> b; // 4 (00000000000000000000000000000100) console.log(result); // 1073741823 (00111111111111111111111111111111) console.log(result);








