Desde ES6 tenemos una palabra reservada llamada const que nos permite crear variables.
Ejm
const PI = 3.1416; console.log(PI);
Utilizaremos const cuando sepamos o tengamos variables que no vayan a cambiar su valor durante el flujo de la aplicación. Importante, no se pueden tener constantes vacías, mientras que sí que podemos tener variables vacías.
const NUEVE; // dará error let ocho; // no dará error, después de crearla le asignamos valor ocho = 'ocho'; console.log(ocho);
No se puede cambiar el valor de una constante, utilizaremos const cuando necesitemos una variable que no cambie su valor durante el flujo de nuestro programa.
Un objeto es un conjunto de atributos con su respectivo valor, y un array es una colección de datos. Una constante no funciona de la misma manera para valores primitivos (boolean, number, string…) que para valores compuestos (objetos, arrays…).
Podemos utilizar la palabra reservada const para declarar variables compuestas, ya que no ha cambiado el valor de las mismas, siguen siendo arrays, objetos, etc.
En resumen, si declaramos valores primitivos con const, no vamos a poder cambiar dicho valor, mientras que si lo declaramos para valores compuestos (objetos o arrays) sí le vamos a poder agregar o quitar elementos.
Si a lo largo del flujo de nuestra aplicación, el valor de una variable va a cambiar, utilizamos let, si la naturaleza de nuestra variable no va a cambiar, es decir, siempre va a ser un array, con más o menos elementos, o un objeto, con más o menos propiedades, o siempre va a ser una variable que no cambie su valor, entonces se utiliza const.