Get to know MDN better
Esta página foi traduzida do inglês pela comunidade. Saiba mais e junte-se à comunidade MDN Web Docs.
This feature is well established and works across many devices and browser versions. It’s been available across browsers since julho de 2015.
Constantes possuem escopo de bloco, semelhantes às variáveis declaradas usando o palavra-chave let. O valor de uma constante não pode ser alterado por uma atribuição, e ela não pode ser redeclarada.
A declaração const cria uma variável cujo o valor é fixo, ou seja, uma constante somente leitura. Isso não significa que o valor é imutável, apenas que a variável constante não pode ser alterada ou retribuída.
Nome da constante. Pode ser qualquer identificador válido.
valueNValor atribuido a constante. Pode ser qualquer expressão válida, incluindo uma função.
Esta declaração cria uma constante que pode pertencer tanto ao escopo global (na janela ou objeto) quanto ao local do bloco em que é declarada. Constantes globais não se tornam propriedades do objeto window, diferente da criação de variáveis com var.
Toda constante requer um inicializador, ou seja, é preciso especificar um valor para a constante no momento em que ela é declarada (o que faz sentido, uma vez que esse valor não pode ser alterado).
A declaração const cria uma referência somente leitura a um valor. Isso não significa que esse valor é imutável, apenas que o identificador da variável constante não pode ser alterado. Se o conteúdo do identificador for um objeto, isso significa que o conteúdo do objeto (ex. seus parâmetros) podem ser alterados.
Todas as considerações de "temporal dead zone" se aplicam tanto a let quanto a const.
Uma constante não pode ter o mesmo nome que uma função ou variável que esteja no mesmo escopo.
O exemplo abaixo demonstra o comportamento de uma constante. Experimente executá-lo no console do seu navegador.
| ECMAScript® 2027 Language Specification # sec-let-and-const-declarations |
Enable JavaScript to view this browser compatibility table.
Em versões anteriores do Firefox & Chrome e a partir de Safari 5.1.7 e Opera 12.00, se você define uma variável com const, você ainda consegue alterar o valor depois. Este recurso não é suportado no Internet Explorer 6-10, mas está incluído no Internet Explorer 11.
A declaração const foi implementada no Firefox muito antes de const aparecer na especificação ECMAScript 6. For const ES6 compliance see Erro do Firefox 950547 and Erro do Firefox 611388.
This page was last modified on 1 de jul. de 2025 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.