⊗tsSpGnTV 30 of 37 menu

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.

Melayu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan kuki untuk operasi laman web, analisis dan personalisasi. Pemprosesan data dijalankan mengikut Polisi Kerahsiaan.
terima semua tataletak tolak