@jenya1995

Почему срабатывает неожидаемое поведение клика?

Добрый день!
подскажите пожалуйста, почему, если я переменные card и game объявляю в самой функции,
(https://codepen.io/Jane111/pen/mdGBPXQ), то все карточки кликаются нормально

а если я те же переменные объявляю глобально, то клик срабатывает странно.
появляется только последняя карточка по любому клику (https://codepen.io/Jane111/pen/ExewYPZ)
  • Вопрос задан
  • 47 просмотров
Пригласить эксперта
Ответы на вопрос 1
Maxsior
@Maxsior
loading...
В первом случае - при каждом вызове функции создаются новые переменные (локальные), и в функции-обработчике они доступны через замыкание.

Во втором случае одни и те же (глобальные) переменные перезаписываются и функция обработчик знает только последнее их значение.

Теоретические основы тут: https://doka.guide/js/closures/
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы