Trong TypeScript, để kiểm tra cả null
và undefined
, bạn có thể sử dụng toán tử so sánh chặt chẽ (===
) hoặc sử dụng toán tử ==
cho phép kiểm tra cả hai giá trị. Dưới đây là một số cách thực hiện điều này:
1. Sử dụng Toán Tử ==
Toán tử ==
so sánh hai giá trị và chuyển đổi kiểu nếu cần. Do đó, bạn có thể kiểm tra cả null
và undefined
bằng cách so sánh với null
:
function isNullOrUndefined(value: any): boolean {
return value == null; // Trả về true nếu value là null hoặc undefined
}
// Ví dụ sử dụng
console.log(isNullOrUndefined(null)); // true
console.log(isNullOrUndefined(undefined)); // true
console.log(isNullOrUndefined(0)); // false
2. Sử dụng Toán Tử So Sánh Chặt Chẽ
Nếu bạn muốn kiểm tra cụ thể hơn, bạn có thể sử dụng toán tử so sánh chặt chẽ:
function isNullOrUndefined(value: any): boolean {
return value === null || value === undefined; // Kiểm tra từng trường hợp
}
// Ví dụ sử dụng
console.log(isNullOrUndefined(null)); // true
console.log(isNullOrUndefined(undefined)); // true
console.log(isNullOrUndefined(0)); // false
3. Sử dụng Optional Chaining (Tùy chọn chuỗi)
Trong trường hợp bạn đang làm việc với các đối tượng, bạn có thể sử dụng optional chaining để tránh lỗi truy cập thuộc tính của null
hoặc undefined
:
interface User {
name?: string | null;
}
const user: User = { name: null };
if (user.name == null) {
console.log("Tên người dùng là null hoặc undefined");
} else {
console.log(`Tên người dùng là: ${user.name}`);
}
4. Sử dụng Hàm Tùy Chỉnh
Bạn cũng có thể tạo một hàm tùy chỉnh để kiểm tra cả hai giá trị:
function isNullOrUndefined(value: any): boolean {
return value === null || value === undefined;
}
// Sử dụng
console.log(isNullOrUndefined(null)); // true
console.log(isNullOrUndefined(undefined)); // true
console.log(isNullOrUndefined("test")); // false
Kết luận
Cả hai phương pháp trên đều hiệu quả để kiểm tra giá trị null
và undefined
trong TypeScript. Bạn có thể chọn cách phù hợp với ngữ cảnh sử dụng của mình.