javascript

Const, var y let en JavaScript: diferencias y explicación

Introducción

JavaScript ha evolucionado y mejorado en los últimos años. Ya tiene un poco de tiempo que se introdujeron estas nuevas características, pero igualmente le puede servir a alguien este tutorial que expone el uso de Const, var y let en JavaScript

Const, var y let en JavaScript

Var

Con esta palabra reservada definimos variables. Por ejemplo:

var nombre = "Luis";
var edad = 15;
var sueldo = 5000;
var mascota = {};

Pero tiene algunas desventajas. La primera es el scope o ámbito y la segunda es la redeclaración.

Por ejemplo, si no estamos en modo estricto esto es válido:

var nombre = "Luis";
var nombre = "Maggie";

Estamos definiendo 2 veces la misma variable pero con valores distintos.

Ahora veamos el scope. Con var, el scope de la variable es la función más cercana. Veamos este código:

function foo(arreglo){

  //Ojo: yo podría acceder a baz aquí
  for(var i = 0; i < arreglo.length; i++){
    var baz = arreglo[i];
  }

  // O aquí
  console.log("Oye baz, estás ahí?", baz);
}

Lo que sería normal es que la variable baz sólo estuviera viva dentro del ciclo for. Pero no; si más tarde queremos acceder a ella estará disponible incluso fuera del for, tomando toda la función como scope.

Para ejemplificar, si yo llamo a esta función…

foo([1,2,3]);

Esto aparece en la consola:

var fuera del scope

Cosa que no debería pasar, pues sólo debería ser accesible dentro del ciclo.

Let

Let puede ser usado como remplazo de var y no tienes que preocuparte por nada si es que escribes buen código. Recomiendo leer por qué no necesitamos punto y coma ni var en JS

Para declarar hacemos esto:

let nombre = "Luis";
let edad = 15;
let sueldo = 5000;
let mascota = {};

 

Esta palabra reservada declara variables pero respeta el scope, y no lo extiende a la función más cercana. Si la declaramos en un if, sólo dentro del if será accesible.

Si la declaramos en un for, sólo dentro del for estará accesible. Veamos el ejemplo de arriba pero ahora con let:

let en JavaScript

Exacto, no está definida y sólo podemos acceder a ella dentro del ámbito en donde fue definida. Esto tiene muchas ventajas, pues a veces como desarrolladores tenemos tantas variables y tal vez una de ellas esté siendo declarada 2 veces o chocando con otra, introduciendo bugs.

Con let nada de eso pasa y escribimos código más seguro.

Const en JavaScript

Terminamos con const. Esta palabra reservada define una constante, pues hace tiempo no podíamos definir una constante en JavaScript.

Recordemos que una constante nunca cambia su valor. Para definirla hacemos esto:

const RUTA_API = "api.com";

Y si luego queremos cambiarla…

const en JavaScript

El intérprete no nos deja cambiarla. En cambio, si la hubiéramos definido con var las cosas serían distintas.

Por cierto, el scope de const es igual que let; totalmente seguro.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Ver comentarios

Entradas recientes

Creador de credenciales web – Aplicación gratuita

Hoy te voy a presentar un creador de credenciales que acabo de programar y que…

5 días hace

Desplegar PWA creada con Vue 3, Vite y SQLite3 en Apache

Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…

2 semanas hace

Arquitectura para wasm con Go, Vue 3, Pinia y Vite

En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…

2 semanas hace

Vue 3 y Vite: crear PWA (Progressive Web App)

En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…

2 semanas hace

Errores de Comlink y algunas soluciones

Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…

2 semanas hace

Esperar promesa para inicializar Store de Pinia con Vue 3

En este artículo te voy a enseñar cómo usar un "top level await" esperando a…

2 semanas hace

Esta web usa cookies.