⊗tsSpGnPTL 36 of 37 menu

Penggunaan Parameter Tipe dalam Batasan Generik di TypeScript

TypeScript juga memiliki kemampuan mendeklarasikan satu parameter tipe, yang akan dibatasi oleh parameter tipe lainnya. Ini diperlukan ketika kita harus menyalin properti dari satu objek ke objek lain, sambil melindungi diri dari kemungkinan kita mengirimkan properti yang tidak diperlukan.

Mari kita lihat contoh berikut. Kembali ke fungsi myFunc yang menentukan panjang variabel:

function myFunc <T> (data: T): T { console.log(data.length); // error return data; }

Namun sekarang kita ingin fungsi ini hanya bekerja dengan tipe-tipe yang memiliki properti length. Untuk itu, buatlah interface ILength, dan berikan properti length bertipe number:

interface ILength { length: number; }

Selanjutnya, dalam fungsi kita, tentukan tipe generik yang mewarisi dari ILength melalui kata kunci extends:

function myFunc <T extends ILength> (data: T): T { console.log(data.length); return data; }

Berikut adalah kode lengkap kita:

interface ILength { length: number; } function myFunc <T extends ILength> (data: T): T { console.log(data.length); return data; }

Mari kita uji fungsi kita dan cari panjang string:

console.log(myFunc('abcde'));

Hasil kode yang dijalankan:

5 'abcde'

Sekarang mari kita berikan array sebagai parameter:

console.log(myFunc(['a', 'b', 'c']));

Hasil kode yang dijalankan:

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