Aula 4

TypeScript

Arrays e Arrays Genéricos

Arrays

Um array é uma coleção ordenada de elementos do mesmo tipo. No TypeScript, você pode declarar arrays com tipos explícitos.

Sintaxe

let numeros: number[] = [1, 2, 3, 4];
let nomes: string[] = ["Ana", "João", "Maria"];

Alternativa:

let notas: Array<number> = [7.5, 8.0, 9.2];

Métodos úteis com arrays

forEach

Executa uma função para cada item do array:

nomes.forEach((nome) => {
  console.log("Olá, " + nome);
});

filter

Filtra os elementos com base em uma condição:

let maiores: number[] = numeros.filter(n => n > 2);
console.log(maiores); // [3, 4]

map

Cria um novo array com base no original:

let dobrados: number[] = numeros.map(n => n * 2);
console.log(dobrados); // [2, 4, 6, 8]

Tipos de arrays mais avançados

Array de objetos:

type Pessoa = {
  nome: string;
  idade: number;
};

let pessoas: Pessoa[] = [
  { nome: "Carlos", idade: 30 },
  { nome: "Ana", idade: 25 },
];

Generics (Tipos Genéricos) — Conceito

Generics permitem criar componentes (funções, classes, interfaces) que funcionam com vários tipos de dados, sem perder a segurança de tipos.

Objetivos e Vantagens dos Generics

Arrays Genéricos

Arrays genéricos são arrays que armazenam elementos de um tipo genérico, garantindo segurança de tipo.

Exemplo 1

            
function mostrarItens(itens: Array): void {
  itens.forEach(item => console.log(item));
}

mostrarItens(["Angular", "React", "Vue"]);
mostrarItens([1, 2, 3]);

            
          

Exemplo 2

            
function primeiroElemento(arr: T[]): T {
  return arr[0];
}

const nome = primeiroElemento(["Ana", "João"]);
const numero = primeiroElemento([10, 20, 30]);

            
          

Exemplo 3

            
function combinarArrays(arr1: T[], arr2: U[]): (T | U)[] {
  return [...arr1, ...arr2];
}

const resultado = combinarArrays([1, 2], ["a", "b"]);
console.log(resultado); // [1, 2, "a", "b"]