¿Cómo crear constantes en JavaScript?
Las constantes son variables inmutables cuyo valor no se puede cambiar. Una vez que haya creado una constante, su valor no se puede cambiar. Al codificar en JavaScript, es posible que te hayas encontrado con la necesidad de crear constantes. Antes de ECMA Script 6, no era muy fácil crear constantes en JavaScript. En este post, te mostraré [...]
Las constantes son variables inmutables cuyo valor no se puede cambiar. Una vez que haya creado una constante, su valor no se puede cambiar.

Al codificar en JavaScript, es posible que te hayas encontrado con la necesidad de crear constantes. Antes de ECMA Script 6, no era muy fácil crear constantes en JavaScript. En esta publicación, le mostraré cómo crear constantes tanto en ECMA Script 5 como en ECMA Script 6.
Constants in ECMA 5
Podemos crear una constante en ECMA Script 5 usando Object.defineProperty(). Primero tenemos que averiguar si la variable sería una variable global o parte del objeto de la ventana. Una vez que se determine, cree la variable estableciendo writable en false.
Object.defineProperty(typeof global==="object" ? global : window,
"foo",
{
value: 10000,
enumerable: true,
configurable: true,
writable: false
});
La función Object.defineProperty() toma tres parámetros,
- Objeto para el que se debe crear la variable
- Nombre de la variable que se va a crear
- Objeto para configurar el comportamiento de la variable.
Para crear una constante,
- Como primer parámetro, estamos pasando un objeto de ventana o un objeto global
- Como segundo parámetro, estamos pasando el nombre de la variable a crear, que en este caso es foo.
- Como tercer parámetro, estamos pasando el objeto para configurar el comportamiento de la variable. Tenga en cuenta que debe hacer que la propiedad grabable sea falsa.
Hemos creado un foo constante. Si intentamos reasignar el valor de foo, JavaScript lo ignorará. Sin embargo, si ejecutamos JavaScript en modo estricto, entonces JavaScript lanzará una excepción. Veamos esto en acción, estamos ejecutando JavaScript en modo estricto e intentando reasignar el 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);
Debido al modo estricto, JavaScript lanzará una excepción como se muestra en la imagen a continuación:

De esta manera, usando el Object.defineProperty() y haciendo que se pueda escribir en falso, podemos crear una constante en ECMA Script 5.
Constants in ECMA 6
Como habrás notado, crear constantes en ECMA Script 5 no fue muy sencillo. En ECMA Script 6, se ha introducido la nueva función const. Nos permite crear constantes o variables inmutables.
const foo=10000; console.log(foo);
Si intentamos reasignar el valor de foo, JavaScript se quejará de ello en ECMA Script 6. Intentemos reasignar el valor de foo como se muestra en el listado a continuación:
const foo=10000; console.log(foo); foo=90; console.log(foo);
JavaScript se quejará de esto como se muestra en la imagen a continuación:

Estas son dos formas en que se pueden crear constantes en JavaScript. Espero que este post te sea útil. Gracias por leer.