Variáveis e Constantes - TypeScript
Para armazenar dados em um programa no TypeScript, assim como em muitas outras linguagens de programação, usamos variáveis.
Para declarar variáveis, como no JavaScript, você pode utilizar a palavra-chave var
var z; // variável z
Outra maneira de declarar variáveis é com a palavra-chave let
let z;
O uso de let
var
var x = "hello";
console.log(x);
var x = "work";
console.log(x);
Em um programa grande, pode ser difícil acompanhar se uma variável já foi declarada, o que pode causar erros. O uso de let
let x = "hello";
console.log(x);
let x = "work"; // isso causará um erro, pois a variável x já foi declarada
console.log(x);
O mesmo ocorre se declararmos uma variável com o mesmo nome duas vezes, mas usando as palavras-chave let
var
let x = "hello";
console.log(x);
var x = "work"; // isso causará um erro, pois a variável x já foi declarada
console.log(x);
Uma vez que a variável é declarada, podemos atribuir valores a ela e, ao longo do programa, alterar esse valor:
let z = 6;
z = 8;
Além das variáveis, o TypeScript também possui constantes: para elas, o valor pode ser atribuído apenas uma vez, e não pode ser modificado ao longo do programa. Para declarar constantes, usamos a palavra-chave const
const z = 6;
z = 8; // isso causará um erro — não é permitido alterar o valor de uma constante
Escopo de Variáveis e Constantes
Como mencionado, não podemos declarar mais de uma vez uma variável (usando let
const
{ código }
Variáveis e constantes declaradas em um escopo interno podem ocultar aquelas com o mesmo nome no escopo externo. Por exemplo:
let x = 10;
{
let x = 25;
console.log(x); // 25
}
console.log(x); // 10
Aqui, temos duas variáveis com o mesmo nome. No entanto, não há erro, pois elas estão em escopos diferentes. A variável let x = 10
let x = 25
25 10
O mesmo se aplica quando as variáveis são declaradas em escopos locais aninhados:
let x = 10;
{
let x = 25;
{
let x = 163;
console.log(x); // 163
}
console.log(x); // 25
}
console.log(x); // 10
Diferenças entre var e let/const
Aqui está um resumo das diferenças entre var
let/const
var | let const |
---|---|
Pode ser acessada fora do escopo em que foi declarada. | Só pode ser acessada dentro do escopo em que foi declarada. |
|
|
Pode ser utilizada antes da sua declaração. | Só pode ser utilizada após a sua declaração. |
|
|
Pode ser declarada várias vezes no mesmo escopo. | Pode ser declarada apenas uma vez no mesmo escopo. |
|
|