Spread Operator com Arrays
Parte da seção Introdução ao TypeScript do Journey de JavaScript da Coddy. Lição 20 de 73.
O operador spread do JavaScript (...) é um recurso poderoso que funciona perfeitamente com arrays tipados do TypeScript. Quando você usa a sintaxe spread para combinar arrays, o TypeScript infere automaticamente o tipo correto para o array resultante, mantendo a segurança de tipos completa durante toda a operação.
O operador spread permite que você “espalhe” os elementos de um array em elementos individuais. Ao combinar arrays tipados, basta usar a sintaxe spread dentro de colchetes para criar um novo array:
let firstNumbers: number[] = [1, 2, 3];
let secondNumbers: number[] = [4, 5, 6];
let combined: number[] = [...firstNumbers, ...secondNumbers];
// Resultado: [1, 2, 3, 4, 5, 6]O TypeScript é inteligente o suficiente para entender que, quando você combina duas matrizes number[] usando o operador spread, o resultado também é uma number[]. Essa inferência de tipos funciona com qualquer tipo de matriz, sejam strings, valores booleanos ou objetos personalizados.
Você pode até misturar o operador spread com elementos individuais:
let scores: number[] = [85, 92];
let allScores: number[] = [100, ...scores, 78];
// Resultado: [100, 85, 92, 78]Essa abordagem cria um novo array sem modificar os arrays originais, o que é particularmente útil ao trabalhar com padrões de dados imutáveis. O operador spread oferece uma maneira clara e legível de combinar arrays, preservando os benefícios da verificação de tipos do TypeScript.
Desafio
FácilCrie dois arrays tipados: firstScores, contendo os números 85, 92 e 78, e secondScores, contendo os números 88, 95 e 82.
Use o operador spread para combinar os dois arrays em um novo array chamado allScores.
Crie outro array tipado chamado bonusPoints, contendo os números 5 e 10.
Use o operador spread para criar um array final chamado finalScores que combine allScores com bonusPoints, mas que também inclua o número individual 100 no início e o número 90 no final.
Imprima o array finalScores no console.
Experimente você mesmo
// TODO: Escreva seu código aqui
console.log(finalScores);Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas 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 TuplasPratique por conta própria: Playground de TypeScript