A visibilidade ou escopo de variáveis e constantes em TS são divididas em
3 tipos: Bloco, Função e Global.
Qualquer declaração de constantes ou variáveis feitas fora de uma função tem
visibilidade global podendo ser acessada por qualquer função ou arquivo .ts.
Exemplo 6
let variavel; //global
function funcao() {
//omitido
}
Qualquer declaração de constantes ou variáveis feitas dentro de uma função tem
visibilidade local/função podendo ser acessada dentro da própria função.
Constantes e variáveis globais podem ser acessadas normalmente dentro de funções.
Exemplo 7
let variavel; //global
function funcao() {
let variavel; //função
}
As variáveis e constantes definidas dentro de um bloco de código tem escopo de
bloco e não podem ser acessadas de fora. Variáveis e constantes globais
podem ser acessadas dentro do bloco.
Exemplo 8
let var1:number;
{ //bloco
let var2:number;
//omitido
}
Em relação a POO, as variáveis de classe tem seu escopo e visibilidade definidas
por modificadores de acesso. Esses podem ser public, private e
protected. O assunto modificadores pode ser visto em
Typscript: Encapsulamento
Módulos ou bibliotecas do usuário contem recursos que possuem escopo global, local ,
função e classe. O assunto módulo pode ser visto em
Typscript: Módulo.