Recapitulação: Prática de Funções Genéricas
Parte da seção Introdução ao TypeScript do Journey de JavaScript da Coddy. Lição 62 de 73.
Desafio
FácilCrie uma função genérica chamada makePair que receba dois argumentos de tipos diferentes e os retorne como uma tupla.
A função deve:
- Usar dois parâmetros de tipo genérico
TeU - Aceitar um parâmetro
firstdo tipoT - Aceitar um parâmetro
seconddo tipoU - Retornar uma tupla do tipo
[T, U] - Ter uma anotação de tipo de retorno explícita
Teste sua função criando as seguintes variáveis:
stringNumberPair- chamemakePaircom"Hello"e42booleanStringPair- chamemakePaircomtruee"World"numberBooleanPair- chamemakePaircom100efalse
Use a desestruturação para extrair valores de suas tuplas:
- Desestruture
stringNumberPairnas variáveistextenum - Desestruture
booleanStringPairnas variáveisflagemessage
Imprima as seguintes saídas:
- Imprima
text - Imprima
num - Imprima
flag - Imprima
message - Imprima o primeiro elemento de
numberBooleanPair - Imprima o segundo elemento de
numberBooleanPair - Imprima o resultado da chamada de
makePaircom"TypeScript"e2024, acessando o primeiro elemento - Imprima o resultado da chamada de
makePaircom99e"bottles", acessando o segundo elemento
Experimente você mesmo
// TODO: Escreva seu código aqui
// Crie a função genérica makePair com os parâmetros de tipo T e U
// A função deve aceitar dois parâmetros e retornar uma tupla
// TODO: Teste sua função criando as variáveis necessárias
// stringNumberPair, booleanStringPair, numberBooleanPair
// TODO: Use a desestruturação para extrair valores das tuplas
// Desestruture stringNumberPair e booleanStringPair conforme especificado
// TODO: Imprima todas as saídas necessárias
// Imprima text, num, flag, message e os outros valores necessáriosTodas as lições de Introdução ao TypeScript
1Primeiros Passos com TS
O que é TypeScript?Por que usar TypeScript?Seu Primeiro Código TypeScriptProcesso de Compilação e ErrosRecapitulação: Introdução ao TS4Trabalhando com Funções
Tipagem de Parâmetros e RetornosTipagem de Arrow FunctionsO Tipo de Retorno 'void'Parâmetros Opcionais com '?'Valores Padrão de ParâmetrosTipagem de Rest ParametersDefinindo Tipos de FunçõesRecapitulação: Criando Funções Tipadas2Tipos Principais
Tipos Básicos: str, num, booleanO Tipo 'any': Válvula de EscapeO Tipo 'unknown'Trabalhando com 'null' e 'undef'Inferência de Tipo na PráticaAnotações de Tipo ExplícitasRecapitulação: Prática de Tipos Principais5Tipos: Aliases, Uniões e Interseções
Aliases de Tipos para PrimitivosTipos de União ('|')Trabalhando com Tipos de UniãoTipos LiteraisTipos de Interseção ('&')Combinando Aliases de TiposRecapitulação: Combinações Avançadas de Tipos3Estrutura de Dados: Arrays e Tuplas
Arrays TipadosModificador 'readonly' para ArraysO que é uma Tupla?Declarando e Acessando TuplasDesestruturando TuplasTuplas ReadonlyArrays Tipados MultidimensionaisSpread Operator com ArraysRecapitulação: Arrays e Tuplas6Tipagem de Objetos e Interfaces
Anotações de Tipo de Objeto InlineType Aliases para ObjetosIntrodução a InterfacesInterfaces vs. Type AliasesProps Opcionais e ReadonlyEstendendo Interfaces e TiposAdicionando Métodos a InterfacesRecapitulação: Definindo Formatos de Objetos9Generics: Uma Primeira Olhada
O Problema que Generics ResolvemCriando uma Função de Identidade GenéricaUsando uma Função GenéricaArrays GenéricosInterfaces GenéricasRecapitulação: Prática de Funções GenéricasPratique por conta própria: Compilador de JavaScript online