Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
April 1, 2022 11:46 pm GMT

Diferenas entre escopos no JavaScript

Quando programamos em qualquer linguagem importante entender conceitos da linguagem. Neste texto vou trazer de forma breve o conceito de escopos na linguagem Javascript.

O que so escopos?

Escopos diz respeito aos limites que permitem que uma varivel pode ser acessada dentro do cdigo. Ou seja, quem poder acessar o seu contedo para ler ou alterar.

No Javascript temos dois escopos: o escopo global e o escopo local.

Grosso modo, o escopo global relativo a todo o cdigo, tem a sua acessibilidade a todo o fluxo de cdigo, incluindo quando dentro de alguma funo.

Enquanto o escopo local aquele declarando dentro de uma funo. O limite de sua acessibilidade se restringe ao contexto {} da funo no qual foi declarado.

Vejamos um exemplo:

var nome = "Charles"function obterIdade() {    var idade = 25}console.log(nome) // Charlesconsole.log(idade) // ReferenceError: idade is not defined

A varivel nome est no escopo global e a varivel idade est no escopo local da funo obterIdade.

Quando tentamos exibir o contedo delas, nome exibida normalmente, porm, para idade, retornando um erro de referncia. Acusa-se que idade no foi definida.

Este erro acontece porque a varivel idade foi definida no escopo local da funo obterIdade, nesse contexto ela s pode ser acessada dentro do domnio local dessa funo. uma limitao acessibilidade da varivel em ralao ao cdigo.

Vejamos um outro exemplo, em que observamos a acessibilidade de uma varivel declarada no escopo local por uma funo.

var nome = "Charles"function obterIdade() {    var idade = 25    console.log(nome) // Charles    console.log(idade) // 25}obterIdade()

No exemplo acima chamada a funo obterIdade para que seja exibido o contedo das variveis nome e idade. Nesse exemplo, a varivel nome impresso mesmo que declarada fora do escopo da funo em que se encontra.

Isso acontece, porque ela foi declarada no escopo local, que permite que a varivel seja acessada quando no mbito do escopo global ou local de alguma funo.

Assim, quando dizemos que a varivel est declarada no escopo global, significa que sua acessibilidade para todo o cdigo. E quando referimos ao escopo local, que ela s acessvel no contexto da funo que est localizada.

Compreender o conceito de escopos importante, pois permite tenhamos conhecimento da capacidade de acesso, mutabilidade e o controle sobre cdigo que estamos escrevendo.

Nota que aqui me restringi apenas a tratar sobre escopos na linguagem Javascript, no me adentrei na explicao de var, let e const. Em outro momento explicarei as diferenas entre essas formas de declarar uma varivel, bem como o processo de hoisting.


Original Link: https://dev.to/pliniohr/diferencas-entre-escopos-no-javascript-3190

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To