Vispārinātie tipa mainīgie TypeScript
Kad mēs izveidojam vispārināta tipa funkciju, TypeScript piespiež mūs pareizi izmantot tipa mainīgos tās pamattekstā. Tāpēc ir jāapsver katra funkcijā padotā parametra darbība no visu mums pieejamo tipu viedokļa.
Izveidosim funkciju, lai noteiktu vispārināta tipa mainīgā garumu:
typescriptfunction myFunc <T> (data: T): T {
console.log(data.length); // kļūda
return data;
}
Kļūda rodas tāpēc, ka ne visiem tiem ir garums. Piemēram, Būla vērtībām šāda darbība nav iespējama. Tomēr ja mēs precizēsim tipu un norādīsim to kā masīvu, tad kods darbosies pareizi. Galu galā katram masīvam, neatkarīgi no tā, kāda tipa tas ir, ir garums:
typescriptfunction myFunc <T> (data: T[]): T[] {
console.log(data.length); // 3
return data;
}
console.log(myFunc([1, 3, 5])); // [ 1, 3, 5 ]
Задание 1
Uzrakstiet funkciju, lai izietu cauri un izvadītu visus vispārināta tipa masīva elementus konsole.