Cómo manejar closures y memoria en JavaScript para evitar fugas