Let y Const - JavaScript

↑ Me gusta (1)

En esta lección tocamos parte importante del fundamente JavaScript, var, let y const presentan pequeñas diferencias importantes, aprendamos sobre ello en esta lección.

Variables let

Podemos decir por definición que let es una instrucción que nos permite declarar una variable con ámbito o alcance local, este tipo de variables opcionalmente puede ser inicializadas con algún valor.

Pensemos en que let nos ayuda a limitar el alcance (scope) de nuestras variables, limitando de acuerdo al bloque de código donde se encuentra. Esta sería la principal diferencia entre let y var.

  • Tipo let: Define variables locales.
  • Tipo var: Define variables globales.

Scope significa alcance

if(true) {
    var message = "Mi variable es global";
}

console.log(message);

Toma en cuenta que he usado dentro del bloque if el tipo var para mi variable message, esto la convierte en global y puedo acceder a ella desde cualquier parte del código.

if(true) {
    let message = "Ahora mi variable es local";
}

console.log(message); //no podemos acceder a ella :(

Como puedes notar, las variables declaradas como let nos permite encapsularlas y así poder utilizarlas en el ámbito donde fueron declaradas, en otras palabras, entre las llaves de cualquier estructura.

Esta debe ser la manera en que debes declarar las variables de ahora en adelante, nos ayudará a mantener el encapsulamiento de la información, crea tus variables con let o var de acuerdo al criterio, ¡decide bien!.

Variables const

Este tipo de variables presentan la particularidad de que el valor no se puede cambiar, una vez declarada deberá mantener su contenido hasta el fin de la ejecución de sistema, en otras palabras, este tipo de variables no permite la reasignación de valor y no se pueden redeclarar. Para ello usamos la palabra reservada const.

const app = 'Rimorsoft Online';

En este caso podemos decir que he declarado la variable app con el nombre de mi aplicación y no se podrá modificar ni redeclarar en el resto del sistema.

const app = 'Rimorsoft Online';

var app = 'Lógica Blue';

console.log(app); //¿Qué crees que sucederá?

No es posible asignar un valor a una constante ya definida.

Para verlo de forma clara tenemos el siguiente ejemplo:

var anio = 2015; 
console.log(anio); 
var anio = 2019;
console.log(anio);

//a medida que avanzamos en el sistema podemos ir cambiando el valor de una variable sin problema alguno

const app = 'Rimorsoft Online'; 
const app = 'Lógica Blue'; 

//no es posible...

Las constantes definen su ámbito o alcance como las variables let pero no se puede alterar su valor, son constantes.

Constantes y Objetos

const config = {
    app: 'Rimorsoft Online',
    web: 'rimorsoft.com',
};
console.log(config);

config.app = 'Lógica Blue'; //cambié el valor de app
console.log(config);

He cambiado el valor de app porque los atributos de un objeto no son afectados por const, solo estoy obligado a mantener la estructura del objeto. Si hago cambios drásticos como config = 'nueva configurarión' ahí si fallaría porque el cambio es de objeto a un string.

Resumen final

Tenemos a la mano let, var y const, esto nos permite tener un mejor manejo de los errores:

  • var para ámbitos globales.
  • let ámbito local.
  • const para variables que se mantendrán igual en todo el sistema.
  • miguel paredes leon

Italo Morales F. Italo Morales F. 4,365.00 XP