Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

JavaScript Bitwise AND (&) Operator คืออะไร?

Operator Bitwise AND (&) เปรียบเทียบบิตของตัวเลขสองจำนวนแบบคู่ต่อคู่ ผลลัพธ์เป็น 1 ก็ต่อเมื่อทั้งสองบิตเป็น 1 มิฉะนั้นเป็น 0

ตัวอย่างโค้ด

<!DOCTYPE html>
<html>
  <body>
    <script>
      document.write("Bitwise AND Operator<br>");
      // 7 = 00000000000000000000000000000111
      // 1 = 00000000000000000000000000000001
      document.write(7 & 1); // ผลลัพธ์: 1
    </script>
  </body>
</html>

การคำนวณ

  7:  00000111
  1:  00000001
  -------------
  7&1: 00000001  = 1

การใช้งานทั่วไป

  • ตรวจสอบ Flag/Permission: if (permission & READ)
  • Masking (เก็บบิตบางส่วน): value & 0xFF (เก็บ 8 บิตล่าง)
  • เช็คเลขคู่/คี่: (num & 1) === 1 → คี่, 0 → คู่
  • หาร 2^n แบบเร็ว: num & (n - 1) เทียบเท่า num % n เมื่อ n เป็น 2^x