Оператор побітового І (AND) & вертає 1 для кожної бітової позиції, де відповідні біти обох операндів дорівнюють 1.
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
Синтаксис
a & b
Опис
Операнди перетворюються на 32-бітні цілі числа та виражаються послідовністю бітів (нулів та одиниць). Числа, що мають більше 32 бітів, втрачають свої старші біти. Наприклад, наступне ціле число, що має більше 32 бітів, буде перетворене на 32-бітне ціле число:
До: 11100110111110100000000000000110000000000001 Після: 10100000000000000110000000000001
Кожен біт першого операнда ставиться у пару до відповідного біту другого операнда: перший біт до першого біту, другий біт до другого, і так далі.
Оператор застосовується до кожної пари бітів, а результат будується побітово.
Таблиця істинності для операції І наступна:
| a | b | a AND b |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
. 9 (основа 10) = 00000000000000000000000000001001 (основа 2)
14 (основа 10) = 00000000000000000000000000001110 (основа 2)
--------------------------------
14 & 9 (основа 10) = 00000000000000000000000000001000 (основа 2) = 8 (основа 10)
Побітове І над будь-яким числом x та 0 дає 0.
Приклади
Використання побітового І
// 5: 00000000000000000000000000000101 // 2: 00000000000000000000000000000010 5 & 2; // 0
Специфікації
| Специфікація |
|---|
| ECMAScript (ECMA-262) The definition of 'Bitwise AND expression' in that specification. |
Сумісність з веб-переглядачами
| Desktop | Mobile | Server | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Bitwise AND (a & b) | Chrome Full support 1 | Edge Full support 12 | Firefox Full support 1 | IE Full support 3 | Opera Full support 3 | Safari Full support 1 | WebView Android Full support 1 | Chrome Android Full support 18 | Firefox Android Full support 4 | Opera Android Full support 10.1 | Safari iOS Full support 1 | Samsung Internet Android Full support 1.0 | nodejs Full support 0.1.100 |
Legend
- Full support
- Full support