Si aprendiste a programar en JavaScript hace mucho tiempo y no te has actualizado con la versión ES6 o simplemente estás aprendiendo JS, quizá tengas alguna confusión de como usar Let, Const o el antiguo Var. Pero no te preocupes, en este artículo voy a explicar en que casos debes usar cada uno de ellos.
Lo primero que debes saber es que las 3 formas sirven para declarar variables, Var se usaba antes de la versión ES6 de JavaScript y puedes seguirla usando por compatibilidad con programas antiguos, pero no es recomendable, en su lugar deberías de usar solo Let y Const.
¿En que casos se usa Let en JavaScript?
Let se usa para declarar variables que pueden ser modificadas o reasignadas en cualquier momento, básicamente se usa cuando no necesitas proteger el valor de esta variable contra modificaciones accidentales.
//Podemos cambiar la version en cualquier momento
//lo cual en algunos casos podria ser algo NO deseado
let version = '1.2.0';
version = '1.2.1';
console.log(version);
¿En que casos se usa Const en JavaScript?
Const se usa para declarar variables en las que se le asigna un valor inicial y no se le puede asignar otro valor, bajo ninguna circunstancia, a estas se conocen como constantes. Cualquier intento de asignar un valor a una variable declarada usando Const, va a generar un error.
//La version no puede ser cambiada
const version = '1.2.0';
La excepción: Objetos mutables
Esta es la parte que me confundía acerca de Const, ya sabemos que estas generan variables que no pueden ser modificadas, y esto es cierto si hablamos de tipos de datos primitivos, pero si se trata tipos de datos Object, entonces hay una excepción. No vamos a poder asignar otro objeto a esta variable, pero si podemos modificar el objeto, a esto se le conoce como mutar el objeto. Veamos uno ejemplo:
const datos = { nombre: 'Luis Cruz' } ; //Esto es un objeto
alert( datos.nombre);
//No podemos asignar otro objeto, pero si modificar el objeto
datos.nombre = 'Luis Esteban';
alert( datos.nombre);