Na programação, o escopo é definido como a acessibilidade da variável. Ou em termos mais técnicos, é a referência ao contexto do código. Então, como podemos diferenciar entre o escopo das variáveis e sobre quais fatores esse "escopo" depende? Bem, vamos cobrir tudo relacionado ao escopo variável em JavaScript.
Escopo variável em javascript
No JavaScript, existem 3 tipos de escopo variável, a saber:
Embora, existisse apenas dois tipos de escopos antes ES6, o escopo global e o escopo local. Mas, com o escopo local do ES6, foi dividido no escopo da função e bloqueio.
Vamos começar com o escopo global primeiro.
Âmbito global
As variáveis definidas fora de qualquer função ou encaracolado Suportes são conhecidos como variáveis globais e têm escopo global. Escopo global significa que as variáveis podem ser acessadas a partir de qualquer parte desse programa, qualquer função ou estado condicional pode acessar essa variável.
Por exemplo
var name = "linuxhint";Saída
Observação: Não é uma boa prática usar variáveis globais quando não forem necessárias, pois cada bloco de código terá acesso a essas variáveis.
Escopo local
Se você definisse algumas variáveis dentro Suportes encaracolados Ou, dentro de uma função específica, essas variáveis são chamadas de variáveis locais, as variáveis locais têm um escopo muito confinado, chamado de escopo local, mas, com o lançamento do ES6, o escopo local foi dividido em dois escopos diferentes:
Escopo da função
O escopo da função é a acessibilidade das variáveis definidas dentro de uma função, essas variáveis não podem ser acessadas de qualquer outra função ou mesmo fora da função no arquivo principal.
Por exemplo
Primeiro, criamos uma variável dentro de uma função e a acessamos dentro da função:
Saída
Você pode ver na saída que está funcionando perfeitamente bem como esperado.
No entanto, se tentarmos acessar essa variável fora da função, receberemos um erro:
função abc ()Bloquear o escopo
O escopo do bloco também é um subtipo de escopo local. O escopo do bloco pode ser definido como o escopo das variáveis dentro do Suportes encaracolados . Agora, esses colchetes encaracolados podem ser de loops, declarações condicionais ou algo mais. Você só tem permissão para se referir a essas variáveis de dentro do Suportes encaracolados .
Imagine uma situação aninhada:
Um bloco de código fechado com Suportes encaracolados contendo algumas variáveis de bloco.
Este bloco de código está dentro de uma função.
função adição ()Agora, quando tentamos acessar as variáveis de dentro da função, mas fora desse bloco específico.
função adição ()E para acessar esta função, precisamos invocá -la por:
Adição();Então teremos um erro, mesmo que sejam variáveis locais da mesma função.
As palavras -chave deixar e const são usados para definir variáveis de bloco.
Por exemplo
A seguir, verifica as marcas obtidas por um aluno e mostram se o aluno passou ou falhou.
Criamos uma variável local escolar em bloco incluída dentro de Suportes encaracolados usando a palavra -chave deixar. Podemos até substituir isso, deixe o const. A saída é como:
Se você estiver tentando se referir à variável local de fora da função, você receberá um erro “O status (nome da variável) não está definido”:
Observação: Para se referir ao “status”Variável, estamos chamando o console.registro() função de fora dos colchetes condicionais;
Importância da palavra -chave LET e const enquanto declara variáveis de bloco
Se você declarar uma variável dentro Suportes encaracolados sem usar o deixar e a const Palavras -chave então a variável será declarada como um “Variável global”. Isso se deve ao fato de as palavras -chave terem seus escopos predefinidos. Para saber mais sobre a variável declarando palavras -chave. Para mostrar isso, vamos remover o deixar palavra -chave do trecho de código acima e execute o código.
Como você pode ver claramente, conseguimos acessar essa variável fora do Suportes encaracolados , o que significa que a variável sem as palavras -chave "let" e "const" é definida com um escopo global.
Conclusão
As variáveis são a parte "mais essencial" de uma linguagem de programação. As variáveis têm escopos diferentes, dependendo de como são declarados. Em JavaScript, uma variável pode ser um dos três escopos diferentes, global, local e bloqueado. Aprendemos como esses escopos variáveis funcionam em JavaScript, analisando vários exemplos, até encontramos erros ao tentar acessar variáveis com diferentes escopos.