Las variables son una parte fundamental de la sintaxis de muchos lenguajes de programación, pues nos permiten declarar elementos que utilizaremos en nuestro código. En este post, te enseñaremos que es el hoisting javascript y cómo funciona el concepto de hoisting de JavaScript, fundamental para entender el comportamiento de variables en este lenguaje de programación.
Antes de empezar con el hoisting de JavaScript
Cuando hablamos del hoisting de JavaScript, nos referimos a un concepto que afecta a la forma en la que se comportan las variables en este lenguaje de programación. Como puedes leer en nuestro post sobre declarar variables en JavaScript, existen tres maneras de definir una variable: var, let y const.
¿Por qué existen tres maneras y no solo una? Pues porque cada palabra clave nos permite determinar un comportamiento diferente. En este sentido, la palabra que más usemos reflejará la forma en la que hemos decidido programar.
Entonces, por ejemplo, un desarrollador web que prefiere ejecutar la lógica de sus proyectos por medio de anidar funciones independientes, utilizará const como su declaración de variables preferida. Esto se debe a que esta lógica requiere establecer constantes en vez de variables que muten con el paso de las líneas. Esto, además, permite más legibilidad en el código al dar claridad sobre el comportamiento de la variable a futuro, pues no cambiará. Esta legibilidad es algo que cualquier desarrollador web agradecerá.
¿Cuándo usar entonces una variable declarada con let hoisting ? Desde KeepCoding te recomendamos que utilices esta palabra clave cuando sepas que la variable puede transformar su valor, como sería el caso de una variable que pueda llegar a tomar el valor de null o que inicie en este estado y luego se modifique. En el contexto de un código grande, este tipo de variables resaltan y llaman al desarrollador a prestar más atención a los valores que declaran.
En los años recientes hemos visto un decrecimiento en el uso de var como forma de declarar variables. Esto se relaciona profundamente con el concepto de hoisting de JavaScript.
¿Qué es el hoisting de JavaScript?
El concepto de hoisting de JavaScript determina que el valor de una variable declarada con var puede subir al principio del scope de la función dentro de la que está declarada. Esto puede ser peligroso, porque puedes terminar con un valor de tipo undefined a pesar de haberle otorgado valor a tus variables. Es decir, la palabra clave var a veces nos sorprende con valores indefinidos en variables definidas.
El hoisting de JavaScript raras veces genera este comportamiento en variables declaradas con const y con let. Aunque puede suceder, el desarrollador web casi que tiene que generar este comportamiento a propósito para que suceda. Por esto es que, en los últimos años, los desarrolladores web se enfocan mucho más en estas dos palabras clave, para que el hoisting de JavaScript no acepte las variables de manera negativa.
Esperamos que este post haya resuelto tus dudas. Si quieres profundizar más en el concepto de hoistinf de JavaScript, te invitamos a leer el artículo hoisting en la página oficial de la Mozilla Developer Network.
Tras leer este post, sabes exactamente qué es y cómo funciona el hoisting de JavaScript. Sin embargo, ¡todavía queda mucho por aprender! Por ello, te recomendamos nuestro Desarrollo Web Full Stack Bootcamp, un espacio de formación intensiva donde aprenderás los conceptos, lenguajes de programación y herramientas fundamentales para desarrollar en la web. ¡Anímate a seguir aprendiendo e inscríbete ahora!