Diferença entre var e let in javascript

Diferença entre var e let in javascript
O var e deixar são palavras -chave usadas para definir ou inicializar uma variável no JavaScript. No entanto, ambos têm escopos diferentes. No JavaScript, duas variáveis ​​diferentes estão disponíveis, que são o escopo global e o escopo do bloco local. Este artigo diferenciará o deixar e var Palavras -chave com a ajuda de escopos.

VAR e escopo global

Sempre que criamos uma nova variável com a ajuda da palavra -chave VAR, ela define duas propriedades para a variável. O primeiro é que o valor dessa variável pode ser alterado a qualquer momento, e o segundo é que essa variável pode ser acessada de qualquer parte do programa, tornando -a uma variável disponível globalmente dentro desse arquivo JavaScript. Para demonstrar isso, vamos dar o seguinte exemplo:

Exemplo de palavra -chave var
Basta criar uma variável com a ajuda da palavra -chave VAR com a seguinte linha:

var string = "google";

Depois disso, tente acessar essa variável de dentro de um estado, um loop para loop e de dentro de uma função também com a ajuda das seguintes linhas:

var string = "google";
console.log (string + "do arquivo javascript");
se for verdade)
console.log (string + "da instrução if");

para (i = 0; i < 1; i++)
console.log (string + "do loop for");

função printString ()
console.log (string + "da função");

printString ();

Após a execução do código mencionado acima do trecho, o seguinte resultado é exibido no terminal:

Fica claro na saída que o compilador foi capaz de acessar a variável corda Do arquivo JavaScript fora de qualquer reclamação, de dentro da declaração if, de dentro do loop, e duram de dentro de uma função. Isso torna essa variável uma variável disponível globalmente ao longo deste arquivo JavaScript.

Deixe e bloqueie o escopo

Sempre que uma variável é inicializada com o deixar Palavra -chave, o escopo dessa variável está definido para bloquear o escopo. Um escopo de bloco restringe o acesso ou a referência da variável de fora do suporte encaracolado no qual foi inicializado. Portanto, podemos dizer que existe um escopo de bloco entre cada par de colchetes encaracolados.

Exemplo de Let Keyword
Primeiro, crie uma variável no JavaScript com a ajuda da palavra -chave Let dentro de uma instrução IF:

se for verdade)
Seja x = "olá";

E então, tente chamar isso x variável fora desta declaração IF com a ajuda das seguintes linhas:

console.log (x);

A execução do programa fornecerá a seguinte saída no terminal:

A saída mostra um erro de referência que x não está definido significa que o escopo da variável x foi fechado dentro da declaração if.

Mas para demonstrar que o escopo do bloco existe entre um par de colchetes encaracolados, independentemente da declaração usada com ele. Simplesmente crie a variável x Dentro de suportes encaracolados como:


Seja x = "olá";

E tente acessar a variável x Fora desses colchetes encaracolados usando a função de log do console:

console.log (x);

Todo o snippet de código será assim:


Seja x = "olá";

console.log (x);

Executando isso preenche o terminal com o seguinte resultado:

A partir da saída e o erro na saída, é facilmente conclusivo que a palavra -chave let limite o escopo da variável em mãos dentro do Suporte encaracolado em que é inicializado.

Conclusão

A diferença significativa entre o var palavra -chave e o deixar palavra -chave é que o var a palavra -chave liga o escopo variável ao global enquanto o deixar A palavra -chave limita o escopo variável para bloquear. O escopo global não precisa de explicação. A variável é acessível a partir de qualquer parte desse arquivo JavaScript. Por outro.