Nâng CaoTypeScript iconTypeScript

Recursive conditional types là gì?

Recursive conditional types là kiểu điều kiện tự gọi lại chính nó, cho phép duyệt qua các nested types ở mọi cấp độ, ví dụ: type DeepPartial<T> = T extends object ? { [K in keyof T]?: DeepPartial<T[K]> } : T sẽ biến tất cả properties thành optional ở mọi tầng lồng nhau.

  • TypeScript giới hạn độ sâu đệ quy (thường khoảng 50 levels) để tránh infinite loop trong quá trình type checking.
  • Kỹ thuật này rất hữu ích để xây dựng các utility types phức tạp như DeepReadonly, DeepRequired, hay Flatten để biến đổi cấu trúc dữ liệu lồng nhau một cách type-safe.

Xem toàn bộ TypeScript cùng filter theo level & chủ đề con.

Mở danh sách TypeScript