Guía definitiva para migrar tu web WordPress a otro hosting
16 de mayo de 2023El Closure de JavaScript: qué es y cómo funciona
30 de mayo de 2023Hoy vamos a ver cómo funciona o cómo es el scope de las variables en JavaScript. Puede parecer un asunto sin importancia pero es todo lo contrario. Los que hemos aprendido programación con otros lenguajes como C, Java y similares, debemos saber esto.
Porqué importa el scope
Es importante conocer el scope de una variable en el lenguaje que estás usando ya que determina el ámbito de uso de tus variables. Es decir, el ámbito donde está disponible, donde la puedes usar.
Como comentaba al inicio, los lenguajes basados en C tienen un scope de bloque, es decir, el ciclo de vida de una variable esta dentro del bloque (un bloque es el código definido entre dos llaves {}), fuera de éste la variable ya no existirá más. En JavaScript esto no es así.
Qué es el scope en programación
El Scope en un lenguaje de programación controla la visiblidad y el ciclo de vida de las variables y los parámetros de las funciones. Es una funcionalidad importante ya que reduce las colisiones de nombres en las variables y nos proporciona un sistema automática de gestión de memoria eliminando variables cuando ya no las necesitamos.
El scope de las variables en JavaScript
JavaScript tiene un scope de función, no de bloque. Por este motivo, una variable estará disponible dentro de la función donde la definas, dentro de esta función podrás tantos bloques como desees que tu variable, aunque la definas en el bloque más profundamente anidado, estará disponible fuera de éste siempre que estés dentro de la misma función.
El scope de función puede llevarnos a confusión cuando definimos variables y por esto es importante conocer cómo funciona este scope, no solo en JavaScript, sino en el lenguaje que estés trabajando en cada momento.
Declaración de variables
Sintáxticamente, en JavaScript, puedes declarar variables donde quieres, al inicio, en medio o al final de tu función, dentro o fuera de un bloque (de tu función), pero se recomienda declararlas todas al inicio de tu función, de esta forma tenemos, en primer lugar, el código más ordenado, y en segundo lugar, podemos ver de un simple vistazo el scope de nuestra variable.
Conclusión
Seguramente, como yo, pensabas que el scope de las variables en JavaScript es por bloque, pero como hemos visto no es así, JavaScript tiene un scope de función. Un ejemplo más de por qué debemos conocer bien el lenguaje en el que estamos trabajando en cada momento.
Puedes aprender más en nuestra sección de Desarrollo Web o en la sección específica de JavaScript.
¡Espero que te haya sido de utilidad!