Junior #utility-types#generics
Các utility types thường dùng: Partial, Pick, Omit, Record, ReturnType
⚡ Trả lời nhanh
Utility types là generic dựng sẵn để biến đổi type: `Partial<T>` làm mọi field optional, `Pick`/`Omit` chọn/loại field, `Record<K, V>` tạo object map, `ReturnType<F>` lấy kiểu trả về của hàm, `Readonly`, `Required`, `NonNullable`, `Awaited`... Chúng chỉ tồn tại ở compile time.
Ví dụ
main.ts · sửa được
| Utility | Tác dụng |
|---|---|
Partial<T> / Required<T> | thêm / bỏ dấu ? mọi field |
Readonly<T> | mọi field readonly |
Pick<T, K> / Omit<T, K> | giữ / bỏ các key K |
Record<K, V> | object với key K, value V |
Exclude<U, X> / Extract<U, X> | loại / giữ thành viên của union |
NonNullable<T> | bỏ null và undefined |
ReturnType<F> / Parameters<F> | kiểu trả về / tuple tham số |
Awaited<T> | kiểu sau khi await Promise |