Ir para o conteúdo
Como criar constantes em JavaScript?

Como criar constantes em JavaScript?

Constantes são variáveis imutáveis cujo valor não pode ser alterado. Depois de criar uma constante, seu valor não pode ser alterado. Ao codificar em JavaScript, você pode ter encontrado um requisito para criar constantes. Antes do ECMA Script 6, não era muito fácil criar constantes em JavaScript. Neste post, vou mostrar a vocês [...]

3min read

Constantes são variáveis imutáveis cujo valor não pode ser alterado. Depois de criar uma constante, seu valor não pode ser alterado.

constants in JavaScript

Ao codificar em JavaScript, você pode ter encontrado um requisito para criar constantes. Antes do ECMA Script 6, não era muito fácil criar constantes em JavaScript. Neste post, mostrarei como criar constantes no ECMA Script 5 e no ECMA Script 6.

Constants in ECMA 5

Podemos criar uma constante no ECMA Script 5 usando Object.defineProperty().  Primeiro, precisamos descobrir se variable seria uma variável global ou parte do objeto window.  Depois que isso for determinado, crie uma variável definindo gravável como false.

Object.defineProperty(typeof global==="object" ? global : window,
    "foo",
    {
    value: 10000,
    enumerable: true,
    configurable: true,
    writable: false
});

Object.defineProperty() recebe três parâmetros,

  1. Objeto para o qual a variável deve ser criada
  2. Nome da variável a ser criada
  3. Objeto para configurar o comportamento da variável.

Para criar uma constante,

  1. Como primeiro parâmetro, estamos passando objeto de janela ou objeto global
  2. Como segundo parâmetro, estamos passando o nome da variável a ser criada, que é foo neste caso.
  3. Como terceiro parâmetro, estamos passando objeto para configurar o comportamento da variável. Lembre-se de tornar a propriedade gravável falsa.

Criamos um foo constante. Se tentarmos reatribuir o valor de foo, o JavaScript irá ignorá-lo. No entanto, se executarmos o JavaScript no modo estrito, o JavaScript lançará uma exceção.  Vamos ver isso em ação, estamos executando JavaScript no modo estrito e tentando reatribuir o valor de foo.

"use strict"

Object.defineProperty(typeof global==="object" ? global : window,
    "foo",
    {
    value: 10000,
    enumerable: true,
    configurable: true,
    writable: false
});

console.log(foo);
foo=90;
console.log(foo);

Devido ao modo estrito, o JavaScript lançará exceções conforme mostrado na imagem abaixo:

Devido ao modo estrito, o JavaScript lançará uma exceção como mostrado na imagem

Desta forma, usando o Object.defineProperty() e tornando gravável para false, podemos criar uma constante no ECMA Script 5.

Constants in ECMA 6

Como você deve ter notado, criar constantes no ECMA Script 5 não era muito simples. No ECMA Script 6, o novo recurso const foi introduzido. Ele nos permite criar constantes ou variáveis imutáveis.

const foo=10000;
console.log(foo);

Se tentarmos reatribuir o valor de foo, o JavaScript reclamará disso no ECMA Script 6.  Vamos tentar reatribuir o valor de foo conforme mostrado na listagem abaixo:

const foo=10000;
console.log(foo);
foo=90;
console.log(foo);

O JavaScript reclamará disso, conforme mostrado na imagem abaixo:

O JavaScript reclamará disso, como mostrado na imagem

Essas são duas maneiras pelas quais as constantes podem ser criadas em JavaScript. Espero que você ache este post útil. Obrigado por ler.

Solicite uma demonstração