ExpertiDict

TypeScript · Avançado · Inglês · Técnico

recursive types

/ɹɪˈkɝsɪv taɪps/substantivo

Tipos que se referem a si mesmos na própria definição, usados para modelar estruturas aninhadas de profundidade arbitrária, como JSON, árvores e menus.

Onde usar

Aparecem ao tipar JSON, árvores de arquivos ou comentários aninhados. Desde o TS 3.7, aliases recursivos funcionam diretamente em arrays e objetos.

Em código

type Json =
  | string
  | number
  | boolean
  | null
  | Json[]
  | { [chave: string]: Json };
const j: Json = { a: [1, { b: null }] };

Exemplos

A JSON value is a recursive type.

Um valor JSON é um tipo recursivo.

The recursive type hit the depth limit on deep trees.

O tipo recursivo estourou o limite de profundidade em árvores fundas.

Cuidado

Recursão em tipos condicionais ou template literals sem condição de parada estoura o limite de profundidade e gera o erro 'excessively deep'.

Sinônimos

tipos recursivos

Veja também

Todos os termos de TypeScript