⊗tsSpGnIms 35 of 37 menu

Restrições de Generics em TypeScript

Em uma das lições anteriores, criamos uma função de tipo genérico que deveria exibir o comprimento do parâmetro passado para ela. No entanto, durante a compilação, recebemos um erro, pois nem todos os tipos podem ter comprimento:

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

Naquela ocasião, corrigimos a situação alterando o tipo genérico para o tipo de array genérico. Mas no TypeScript existe a possibilidade de criar restrições para generics. Para isso, entre colchetes angulares, após a variável T, escrevemos a palavra-chave extends. Após ela, entre chaves, registramos uma nova variável str do tipo string. O restante do código da função permanecerá sem alterações:

function myFunc <T extends {str: string}> (data: T): void { console.log(data.str.length); }

Assim, o tipo genérico herda o tipo da variável str, especificada entre chaves. Agora vamos verificar o funcionamento da nossa função e criar uma variável myStr, referenciando o tipo str, e definir seu valor entre chaves:

let myStr: {str: string} = {str: 'abcde'};

Vamos chamar a função myFunc, não esquecendo de especificar novamente seu tipo e passar a variável myStr como parâmetro:

myFunc <{str: string}> (myStr);

Com base no exemplo considerado na lição, defina a função para encontrar o comprimento de um array numérico.

Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar