Junior — Middle
Explica qué significa capturar variables dentro de una función de cierre.
sobes.tech AI
Respuesta de la IA
La captura de variables dentro de una función de cierre significa que el cierre "recuerda" y puede usar variables del contexto circundante en el que fue creado.
Por ejemplo, si dentro de una función se declara una variable y luego se devuelve una función que usa esa variable, esa variable es "capturada" por el cierre y mantiene su valor incluso después de salir de la función externa.
Ejemplo en Swift:
func makeIncrementer(amount: Int) -> () -> Int {
var total = 0
return {
total += amount
return total
}
}
let incrementByTen = makeIncrementer(amount: 10)
print(incrementByTen()) // 10
print(incrementByTen()) // 20
Aquí, el cierre captura las variables total y amount, manteniendo su estado entre llamadas. Esto permite crear funciones con estado interno.