ビット論理和代入演算子 (|=)
Baseline
広く利用可能
この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2015年7月以降、すべてのブラウザーで利用可能です。
ビット論理和代入演算子 (|=) は、両方のオペランドの二進表現を使用し、それらに対してビット単位の OR 演算を実行して、結果を変数に代入します。
試してみましょう
let a = 5; // 00000000000000000000000000000101
a |= 3; // 00000000000000000000000000000011
console.log(a); // 00000000000000000000000000000111
// 予想される結果: 7
構文
js
x |= y
解説
x |= y は x = x | y と同等である(ただし、式 x は一度だけ評価されます)。
例
>ビット論理和代入の使用
js
let a = 5;
a |= 2; // 7
// 5: 00000000000000000000000000000101
// 2: 00000000000000000000000000000010
// -----------------------------------
// 7: 00000000000000000000000000000111
仕様書
| 仕様書 |
|---|
| ECMAScript® 2027 Language Specification> # sec-assignment-operators> |