1. Giá trị Boolean của một biểu thức trong JavaScript

Kiểu dữ liệu Boolean là một kiểu dữ liệu trong Js đại diện cho 2 giá trị True và False. Đây là một kiểu giá trị nguyên thủy mà với đặc tính của nó, thường được sử dụng để làm kiểu dữ liệu cho thuộc tính chỉ lưu trữ hai giá trị ví dụ Đúng/Sai, Tắt/Mở,… Thông thường trong lập trình ta sẽ cần một kiểu dữ liệu mà chỉ có thể là một trong hai giá trị, ví dụ như:

  • YES / NO (CÓ / KHÔNG)
  • ON / OFF (BẬT / TẮT)
  • TRUE / FALSE (ĐÚNG / SAI)

Giá trị Boolean của một biểu thức là cơ sở cho tất cả các phép so sánh và điều kiện của Js.

Toán Tử Ý Nghĩa Ví dụ
== Bằng day == Monday
> Lớn hơn age > 18
< Nhỏ hơn age < 18

2. Hàm boolean() trong JavaScript

Ta có thể sử dụng hàm Boolean() để xác định xem một biểu thức (hoặc một biến) có đúng hay không. Ví dụ:

<script>
document.write(Boolean(10 > 9));
</script>

Hoặc ta thậm chí có thể dùng nó một cách ngắn gọn:

<script>
document.write(10 > 9);
</script>

Chú ý

Các câu lệnh của JS có phân biệt chữ HOA, chữ thường, do vậy câu lệnh Boolean() sẽ hoạt động, trong khi boolean() thì không.

3. Giá trị True

Tất cả những gì mà có chứa giá trị thì sẽ đều được coi là True. Hay nói cách khác tất cả cái gì là giá trị “Thực” đều là True

Ví dụ:

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML =
"100 là " + Boolean(100) + "<br>" +
"3.14 là " + Boolean(3.14) + "<br>" +
"-15 là " + Boolean(-15) + "<br>" +
"Bất kỳ chuỗi nào (không trống) là " + Boolean("Hello") + "<br>" +
"Ngay cả chuỗi 'false' là " + Boolean('false') + "<br>" +
"Bất kỳ biểu thức nào (ngoại trừ số 0) là " + Boolean(1 + 7 + 3.14);
</script>

4. Giá trị False

Tất cả những gì không chứa giá trị được coi là false. Hay nói cách khác tất cả những gì không phải là “Thực” đều là False.

Ví dụ:

Giá trị Boolean của số 0 là false

<script>
document.write(Boolean(0));
</script>

Giá trị Boolean của -0 cũng là false

<script>
document.write(Boolean(-0));
</script>

Giá trị Boolean của “” (chuỗi trống) là false

<script>
let x = ""
document.write(Boolean(x));
</script>

Giá trị Boolean của undefined (không xác định) là false:

<script>
let x
document.write(Boolean(x));
</script>

Giá trị Boolean của null là false

<script>
let x = null;
document.write(Boolean(x));
</script>

Giá trị Boolean của false đương nhiên cũng là false

<script>
let x = false;
document.write(Boolean(x));
</script>

Giá trị Boolean của NaN là false

<script>
let x = 10 / "Hello";
document.write(Boolean(x));
</script>

5. Boolean dưới dạng đối tượng trong JavaSript

Thông thường các boolean JavaScript là các giá trị nguyên thủy được tạo từ các ký tự như let x = false; Nhưng boolean cũng có thể được định nghĩa là các đối tượng với từ khóa new như let y = new Boolean(false); 

Ví dụ:

<p id="demo"></p>

<script>
// x là boolean
let x = false;

// y là object - đối tượng
let y = new Boolean(false);

document.getElementById("demo").innerHTML = typeof x + "<br>" + typeof y;
</script>

Nhưng cần chú ý:

  • Không nên tạo đối tượng kiểu Boolean. Việc này sẽ làm chậm quá trình thực thi.
  • Từ khóa new sẽ phức tạp hóa code. Điều này sẽ tạo ra những kết quả ngoài ý muốn.

Khi sử dụng toán tử ===, boolean bằng nhau chưa chắc bằng nhau, vì === yêu cầu sự tương đồng ở cả kiểu dữ liệu và giá trị.

<p id="demo"></p>
<p id="demo2"></p>
<script>
let x = false;        
let y = new Boolean(false); 
document.getElementById("demo").innerHTML = (x==y);
document.getElementById("demo2").innerHTML = (x===y);
</script>

Hãy chú ý việc so sánh giữa 2 toán tử ===== . Cùng với đó là việc so sánh 2 đối tượng trong Js luôn trả về False.