Closure
El “closure” o “cierre” es la capacidad de una función de recordar y acceder a su ámbito léxico externo (sus variables y funciones circundantes) incluso después de que la función externa que la creó haya terminado de ejecutarse.
Y para entenderlo te recomiendo ver la explicación de closures en JavaScript.