Pembolehubah Jenis Umum dalam TypeScript
Untuk pemahaman yang lebih baik tentang konsep generik, mari kita cipta fungsi pertama kita - fungsi identiti. Fungsi sedemikian mengembalikan tepat apa yang diberikan kepadanya - dengan jenis yang sama.
Mari kita tulis varian fungsi kita secara berasingan terlebih dahulu.
Tulis fungsi yang menerima nombor sebagai parameter dan mengembalikan nombor:
function func(data: number): number {
return data;
}
Sekarang tulis fungsi yang menerima rentetan sebagai parameter dan mengembalikan rentetan:
function func(data: string): string {
return data;
}
Katakan sekarang kita ingin membuat supaya semua ini dilakukan oleh satu fungsi. Iaitu kita mahu melakukan penggenerikan.
Untuk ini, kita menggunakan pembolehubah
jenis umum, yang menyimpan jenis data dalam dirinya.
Pembolehubah sedemikian diisytiharkan
dalam kurungan sudut sebelum kurungan bulat
dengan parameter fungsi. Mari kita isytiharkan
pembolehubah sedemikian, memberikannya nama T
(boleh sebarang nama):
function func <T>(parameter di sini) {
return data;
}
Selepas ini, kita akan mempunyai pembolehubah T,
yang boleh digunakan untuk
meletakkan jenis parameter ke dalamnya, kemudian
menyebutnya sebagai jenis nilai
pemulangan.
Tentukan jenis parameter kita dalam bentuk pembolehubah kita:
function func <T>(data: T) {
return data;
}
Hasilnya, parameter boleh diberikan
dalam sebarang jenis, dan jenis ini akan disimpan dalam
pembolehubah kita T.
Sekarang gunakan nilai pembolehubah T
sebagai penunjuk hasil fungsi:
function func <T>(data: T): T {
return data;
}
Sekarang hasilnya, jenis hasil fungsi akan diperoleh daripada jenis parameter. Mari kita ujinya.
Panggil fungsi dengan nombor:
console.log( func(3) ); // akan memaparkan 3
Panggil fungsi dengan rentetan:
console.log( func('x') ); // akan memaparkan 'x'
Buat fungsi yang menerima sama ada dua nombor, atau dua rentetan sebagai parameter. Fungsi tersebut harus mengembalikan hasil tambah parameter.