
Antes utilizábamos solo el «var» para definir una variable, sin embargo en esta versión podemos utilizar el «let» y el «const».
Estos son los puntos importantes:
- Su característica principal es que las variables declaradas con «let» y «const» no pueden ser RE-DECLARADAS, que no es el mismo a re-definirse. Feature que si puede tener el «var».
// Trabajando con var
var nombre = «juan»;
var nombre = «pedro»;
console.log(nombre); // pedro.
// Resultado correcto
// Trabajando con let
let nombre = «juan»;
let nombre = «pedro»;
console.log(nombre); // ERROR
// Porque ya declaramos la variable anteriormente.
// Sí podríamos hacer algo así:
let nombre = «jose»;
nombre = «juan»;
// Aquí la estamos re-definiendo no re-declarando.
- Tanto «let» y «const» tienen la misma regla del scope cuando se declaran, es decir que: el «scope» de «let» y «const» es de tipo bloque, esto significa que solo pueden ser llamadas o utilizadas dentro de las llaves {}, de otra manera dará error, lo cual no sucede con «var».
// Por ejemplo:
function saludar() {
let nombre = «luis»;
return «hola» + saludo;
}
console.log(nombre); // ERROR
//Ya que la variable solo está definida dentro de la funcion.
//También sucede con «const».
- La diferencia entre «const» y «let» es la siguiente:
// con «let» podemos declararla primero:
let name = «juan»;
// y luego re-asignar o re-definir la variable
// a otro nombre (por ejemplo) e imprimirla en pantalla:
name = «jose»;
console.log(name); // jose
// Resultado correcto
Con «const» no podemos hacer esto, el nombre const se refiere a una variable constante es decir siempre será la misma.
const name = «sandoval»;
name = «Luis»;
console.log(name); // ERROR
Resumen:
Let puede re-asignarse pero no re-declararse.
Const no puede re-asignarse y tampoco re-declararse. Siempre será constante.
Y esto aplica para variables y arrays.