Algemene tipes veranderlikes in TypeScript
Wanneer ons 'n algemene tipe funksie skep, dwing TypeScript ons om die tipes veranderlikes reg te gebruik in sy liggaam. Daarom moet ons die gedrag van elke parameter wat aan die funksie oorgedra word, beskou vanuit die oogpunt van al die beskikbare tipes.
Kom ons skep 'n funksie om die lengte van 'n algemene tipe veranderlike te bepaal:
function myFunc <T> (data: T): T {
console.log(data.length); // fout
return data;
}
Die fout ontstaan omdat nie alle tipes 'n lengte het nie. Byvoorbeeld, vir Booleaanse waardes is so 'n aksie onmoontlik. Maar as ons die tipe verfyn en dit as 'n skikking spesifiseer, sal die kode korrek werk. Elke skikking, ongeag sy tipe, het immers 'n lengte:
function myFunc <T> (data: T[]): T[] {
console.log(data.length); // 3
return data;
}
console.log(myFunc([1, 3, 5])); // [ 1, 3, 5 ]
Skryf 'n funksie om deur al die elemente van 'n algemene tipe skikking te iter en hulle in die konsole uit te druk.