Внутри прослушивателя событий вы можете использовать this
для ссылки на текущую кнопку:
for (var i=0; i<5; i++) {
button[i].addEventListener('click', function(e) {
alert( this ); // <-- This inside the event listener = current button
});
}
Другой метод - заключить тело цикла в замыкание и создать локальную переменную:
for (var i=0; i<5; i++) {
(function(button) { // <--- Local variable
button.addEventListener('click', function(e) {
alert( button );
});
})(button[i]); // <-- Pass button
}
Вместо создания новой функции в каждом цикле вы также можете создать именованную функцию вне цикла:
function createButtonEvent(button) {
button.addEventListener('click', function(e) {
alert( button );
});
}
for (var i=0; i<5; i++) {
createButtonEvent(button[i]);
}