JavaScript có các giá trị sau evaluate thành false khi ép kiểu Boolean:
false0- Chuỗi rỗng:
"",'',`` nullundefinedNaN(Not a Number)
Ví dụ
<!DOCTYPE html> <html lang="vi"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Falsy values</title> <style> body { font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; } .result{ font-size: 20px; font-weight: 500; color: blueviolet; } </style> </head> <body> <h1>Nhận diện giá trị Falsy trong JavaScript</h1> <div class="result"></div> <br /> <button class="Btn">NHẤN VÀO ĐÂY</button> <h3>Nhấn nút để xác định một số giá trị falsy trong JavaScript</h3> <script> let resEle = document.querySelector(".result"); let BtnEle = document.querySelector(".Btn"); BtnEle.addEventListener("click", () => { if(!0){ resEle.innerHTML = '0 evaluates to boolean false <br>'; } if(!''){ resEle.innerHTML += " '' evaluates to boolean false <br>"; } if(!null){ resEle.innerHTML += 'null evaluates to boolean false <br>'; } if(!undefined){ resEle.innerHTML += 'undefined evaluates to boolean false <br>'; } if(!NaN){ resEle.innerHTML += 'NaN evaluates to boolean false <br>'; } }); </script> </body> </html>
Kết quả
Khi nhấn nút, tất cả 5 điều kiện if đều true, hiển thị từng dòng xác nhận.
Ngoài 6 giá trị falsy trên, mọi giá trị khác đều truthy (kể cả [], {}, function(){}, "false", "0"). Dùng Boolean(value) hoặc !!value để ép kiểu tường minh.