ExpertiDict

TypeScript · Intermediário · Inglês · Técnico

namespace

/ˈneɪmˌspeɪs/palavra-chave

Construção que agrupa tipos e valores sob um nome, gerando um objeto em JavaScript quando contém valores. É a forma antiga de organizar código, hoje substituída por módulos ES.

Onde usar

Ainda aparece em arquivos .d.ts de bibliotecas, em código legado e em declaration merging. Em código novo, módulos com import e export são a escolha padrão.

Em código

namespace Geo {
  export const PI = 3.14;
  export function area(r: number) {
    return PI * r * r;
  }
  export interface Ponto { x: number }
}
const a = Geo.area(2);

Exemplos

That namespace is legacy, move it to a module.

Esse namespace é legado, mova para um módulo.

Type definitions often use a namespace to group types.

Arquivos de tipos costumam usar um namespace para agrupar tipos.

Cuidado

Não é um módulo ES: o namespace não depende de arquivo, e com erasableSyntaxOnly ou type stripping um namespace que contém código não roda.

Sinônimos

internal module

Antônimos

módulo ES

Veja também

Todos os termos de TypeScript