DEV Community

loading...

Discussion on: [PT-BR] Variáveis no Javascript: var, let e const em cinco minutos.

Collapse
eduardoklosowski profile image
Eduardo Klosowski • Edited

Eu não posso dizer se consegui entender os conceitos por já conhece-los, mas está bem descrito.

Uma coisa a acrescentar é que é possível usar variáveis sem usar var, let ou const, que nesse caso seriam criadas no escopo global, como:

function teste() {
    a = 10;
    console.log(b);
    if (a > 5) {
        var b = 20;
    }
}

teste();
console.log(a);
Enter fullscreen mode Exit fullscreen mode

Onde o código a cima imprime 10 no console.log da variável a, e para evitar problemas, é importando usar var, let ou const.

Outra coisa interessante a olhar é o console.log da variável b, que em vez de dar ReferenceError, pela variável não ter sido declarada ainda, o js executa primeiro a instrução para criar a variável, e só depois executa o código da função, algo como:

function teste() {
    var b;
    a = 10;
    console.log(b);
    if (a > 5) {
        b = 20;
    }
}
Enter fullscreen mode Exit fullscreen mode

E por esse motivo é impresso undefined nesse caso.

Ainda nesse assunto, existem as closures que trabalham com os escopos para criar variáveis que não podem mais ser sobrescritas, mesmo elas não sendo constantes.

Forem Open with the Forem app