У меня есть 3 кнопки, и я пытаюсь вернуть значение той, которую пользователь нажимает через прослушиватель событий. почему, когда созданный для l oop находится внутри функции, функция печати выдает «[object MouseEvent]», но в ту минуту, когда я удаляю объявленную функцию и сохраняю тело, она снова начинает работать. Кроме того, обратите внимание, что я использовал функцию печати локально в функции прослушивателя событий, я обнаружил, что функция (которая искажает вывод) работает, как и предполагалось, когда я глобально использую функцию в качестве параметра функции печати. вот мой JavaScript код
function computerPlay() {
const random = Math.floor(Math.random() * 3);
if (random === 0) {
return ("rock")
} else if (random === 1) {
return ("paper")
} else {
return ("scissors")
}
}
function print(x) {
document.getElementById("dem").innerHTML = computerPlay();
document.getElementById("player").innerHTML = x;
}
let buttons = document.querySelectorAll(".bt")
buttons.forEach(button => {
button.addEventListener('click', print, false);
});
let player = document.querySelectorAll(".bt")
for (let i = 0; i < player.length; i++) {
player[i].addEventListener('click', function(i) {
print(i.target.value)
})
}