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

Cách kiểm tra biến "undefined" trong JavaScript


Kết quả của các kiểm tra sau cho biết biến có phải undefined. Kết quả false = biến undefined. Ví dụ biến res = 10 → True.

Ví dụ

<html>
<body>
<script>
var res = 10;
if (res) {
  document.write("True");
} else {
  document.write("False");
}
</script>
</body>
</html>

Các cách kiểm tra chuẩn xác

1. typeof (an toàn nhất)

if (typeof myVar === "undefined") {
  // biến chưa khai báo HOẶC khai báo nhưng chưa gán giá trị
}

2. So sánh trực tiếp (chỉ khi chắc biến đã khai báo)

if (myVar === undefined) {
  // giá trị chính xác là undefined
}

3. Kiểm tra truthy (phổ biến nhưng không chính xác cho 0, "", false)

if (myVar) {
  // truthy: không phải false, 0, "", null, undefined, NaN
}

4. Nullish coalescing (??) - ES2020

const value = myVar ?? "default"; // chỉ fallback khi null/undefined

Bảng so sánh

Giá trịif (x)x === undefinedtypeof x === "undefined"x == nullx ?? "d"
undefinedfalsetruetruetrue"d"
nullfalsefalsefalsetrue"d"
0falsefalsefalsefalse0
""falsefalsefalsefalse""
falsefalsefalsefalsefalsefalse
undeclaredReferenceErrorReferenceErrortrueReferenceErrorReferenceError

Khuyến nghị

  • Kiểm tra biến có tồn tại: typeof x !== "undefined".
  • Kiểm tra giá trị null/undefined: x == null hoặc x === null || x === undefined.
  • Default value: x ?? defaultValue (ES2020).
  • Tránh if (x) khi 0, "", false là giá trị hợp lệ.