Вопрос проверяет понимание замыканий, области видимости и инкапсуляции состояния.
Короткий ответ
Счётчик через замыкание реализуется функцией, которая хранит состояние во внешней переменной и возвращает внутреннюю функцию. Эта внутренняя функция имеет доступ к переменной даже после завершения внешней функции. Таким образом состояние становится приватным и недоступным напрямую извне. Каждый вызов фабричной функции создаёт независимый счётчик.
Длинный ответ
Зарегистрироваться
Развернутый ответ доступен только зарегистрированным пользователям.