Cual es la diferencia de usar var, let o const
Cual es la diferencia de usar var, let o const
Hola
-Var: Al declarar una variable usando la palabra var
esta variable es de ambito global, esto quiere decir que se puede utilizar, inicializar o modificar desde cualquier parte del codigo, por lo que no se nada bueno en terminos de encapsulamiento o mas que todo se vuelve un dolor de cabeza cuando tienes 2 o mas variables que tienen el mismo nombre en diferentes bloques de codigo, por lo que ya no se recomienda para nada su uso, por ejemplo:
function ambitoGlobal() {
var variableGlobal = "Soy una variable global";
}
variableGlobal = "Cambiando su valor";
Como ves, cambie su valor por fuera de la funcion ambitoGlobal()
, y aunque la variable esta dentro de la funcion, igual podria acceder a ella y cambiar su estado o valor, por lo que por eso no se recomienda usar.
-Let: Esta palabra reservada se usa para las variables de ambito local o de bloque por asi decirlo:
function local(){
let ambitoLocal = "Soy una variable de ambito local";
}
ambitoLocal = 12; //Esto generaria un error ya que la variable esta solo dentro del bloque de la funcion.
Como ves, tenemos una variable let ambitoLocal
que solo es accesible dentro de la funcion, si intento cambiar su valor fuera de la funcion me daria un error por que su ambito es de bloque, y esta dentro del bloque de la funcion function local()
por lo que solo se puede cambiar su valor si se hace dentro de la misma funcion, no por fuera de ella.
-Const: Esta ya es exactamente igual a let
con una diferencia importante, y es que como su nombre indica es una variable constante, esto quiere decir que su valor no va a cambiar una vez ya a sido declarada, por ejemplo:
const variableConstante = "Soy una variable constante";
variableConstante = "Intentando cambiar su valor"; //Esto me daria un error ya que no se puede cambiar o reemplazar el valor de una variable costante.