Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Toán tử OR và gán (|=) trong JavaScript

Định nghĩa

a |= b tương đương a = a | b. Thực hiện OR bitwise rồi gán kết quả.

Ví dụ

<script>
var a = 2;  // 10
var b = 3;  // 11
document.write("(a |= b) = " + (a |= b)); // 3 (11)
</script>

Ứng dụng: Bật flag (Bitmask)

const READ = 1;    // 001
const WRITE = 2;   // 010
const EXECUTE = 4; // 100

var perm = 0;
perm |= READ;      // 001
perm |= WRITE;     // 011
perm |= EXECUTE;   // 111 (7)

// Kiểm tra
(perm & READ) !== 0;     // true
(perm & WRITE) !== 0;    // true

Các toán tử bitwise assignment (lặp lại)

Toán tửÝ nghĩa
&=AND + gán
|=OR + gán
^=XOR + gán
>>=Right shift + gán
>>=Unsigned right shift + gán
<<=Left shift + gán