Cursos / Jogos Digitais / Programação Orientada a Objetos / Aula
No exemplo abaixo, os arquivos estão dentro da mesma pasta, então as variáveis estão dentro do mesmo escopo, porém a presença do namespace Exemplo evita o erro de variável com mesmo nome, pois o namespace garante seu próprio escopo.
Arquivo exemplo.ts
namespace Exemplo{
let mensagem: string = "Tudo bem?"
}
Arquivo app.ts
let mensagem = "Oi!"
Nesse exemplo, o namespace Texto tem duas funções que são visíveis fora do namespace, pois utiliza export.
namespace Texto{
export function imprimir(texto: string){
console.log(texto);
}
export function contarTexto(texto: string): number{
return texto.length;
}
}
Texto.imprimir("Emerson");
console.log(Texto.contarTexto("Emerson"));
Arquivo StringUtils.ts
namespace StringUtils{
let tamanhoMaximo = 10;
export function maiuscula(texto: string){
return texto.toUpperCase();
}
export function minuscula(texto: string){
return texto.toLowerCase()
}
export function validaTexto(texto: string): boolean{
return texto.length <= tamanhoMaximo
}
}
Arquivo app.ts
/// reference path = "StringUtils.ts" />
console.log(StringUtils.maiuscula("ufrn"));
console.log(StringUtils.minuscula("EMERSON"));
console.log(StringUtils.validaTexto("typescript e POO"));
Versão 5.3 - Todos os Direitos reservados