Hàm generic trong TypeScript
Trong các bài học trước, chúng ta đã tạo một hàm identity nhận các tham số kiểu generic. Bây giờ chúng ta sẽ học cách mô tả kiểu của hàm như vậy và tạo các interface generic.
Hàm generic cũng có thể
được viết dưới dạng arrow function. Hãy
khai báo một biến func có
kiểu là một hàm generic:
function myFunc <T> (data: T): T {
return data;
}
let func: <T> (data: T) => T = myFunc;
Có thể sử dụng một ký hiệu khác cho kiểu generic của biến đó. Điều quan trọng là đảm bảo tên kiểu không xung đột:
function myFunc <T> (data: T): T {
return data;
}
let func: <U> (data: U) => U = myFunc;
Kiểu generic có thể được viết bằng cách đặt signature gọi hàm và kiểu hàm trong dấu ngoặc nhọn:
function myFunc < T > (data: T): T {
return data;
}
let func: {<U> (data: U): U} = myFunc;
Hãy viết một hàm để xác định độ dài của một mảng có kiểu generic trong các biến thể được mô tả trong bài học này.