> For the complete documentation index, see [llms.txt](https://daniel-morales.gitbook.io/javascript-avanzado-en-espanol/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://daniel-morales.gitbook.io/javascript-avanzado-en-espanol/ii-scope-and-closures/4-hoisting.md).

# 4- Hoisting

Por ahora, debe estar bastante cómodo con la idea de los scope, y cómo las variables se adjuntan a diferentes niveles de ámbito dependiendo de dónde y cómo se declaran. Tanto el ámbito de la función como el de bloque se comportan por las mismas reglas a este respecto: cualquier variable declarada dentro de un ámbito se adjunta a ese ámbito.

Pero hay un detalle sutil de cómo funciona la inclusión de un ámbito con declaraciones que aparecen en varios lugares dentro de un ámbito, y ese detalle es lo que examinaremos aquí.
