Trong TypeScript, để kiểm tra cả nullundefined, 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ả nullundefined 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ị nullundefined 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.