Задать вопрос

Как передать параметр цикла for в обработчик событий?

for (var a = 0; a < arrOfTitles.length; a ++) {
		arrOfTitles[a].addEventListener('click', function() {
			alert(a);
		});
}


При клике на элемент функции alert всегда передается последнее значение параметра a, вне зависимости от его расположения в массиве. Необходимо, чтобы при клике на первый элемент функции alert передавался параметр, равный индексу элемента массива, на котором сработал обработчик. Как это можно реализовать? Заранее спасибо за ответы.
  • Вопрос задан
  • 100 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик расширенный
    13 месяцев
    Далее
  • Академия Eduson
    Fullstack-разработчик на JavaScript
    11 месяцев
    Далее
Решения вопроса 2
Stalker_RED
@Stalker_RED
У вас же переменная a общая для всех элементов. Используйте let a = 0 вместоvar a = 0.

https://jsfiddle.net/f2nygkqq/
Ответ написан
Комментировать
var -> let
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы