Đối tượng Boolean (tạo bằng new Boolean()) có 3 phương thức chính:
Danh sách phương thức
| STT | Phương thức | Mô tả |
| 1 | toSource() | Trả về chuỗi mã nguồn tạo đối tượng (non-standard, chỉ Firefox). |
| 2 | toString() | Trả về "true" hoặc "false" (string) tùy giá trị. |
| 3 | valueOf() | Trả về giá trị primitive true hoặc false (boolean). |
Ví dụ: valueOf()
<!DOCTYPE html>
<html>
<body>
<script>
var flag = new Boolean(false);
document.write("flag.valueOf(): " + flag.valueOf()); // false (boolean)
document.write("<br>typeof: " + typeof flag.valueOf()); // "boolean"
</script>
</body>
</html>
Lưu ý quan trọng:
Boolean object (new Boolean(false)) luôn truthy trong điều kiện if — vì nó là object.
- Chỉ
boolean primitive (false, 0, "", null, undefined, NaN) mới là falsy.
- Luôn ưu tiên dùng primitive boolean thay vì
new Boolean().
// Sai lầm thường gặp
var b = new Boolean(false);
if (b) { console.log("Chạy!"); } // Chạy! Vì object luôn truthy
// Đúng
var b = false;
if (b) { ... } // Không chạy
So sánh primitive vs object:
| Đặc điểm | Primitive (false) | Object (new Boolean(false)) |
| typeof | "boolean" | "object" |
| Truthy/Falsy | Falsy | Truthy |
| valueOf() | false | false |
| toString() | "false" | "false" |