为什么当我按下按钮时我的输出成倍增加?我希望它每次点击都有一个输出
Why are my output multiplies when I press the button? I want it to have single output every click
const btn = document.querySelector('button')
let x = 0
const load = ()=>{
btn.addEventListener('click',()=>{
console.log(x++)
load()
})
}
load()
首次点击:0
第二次点击 : 1, 2
第三次点击:3, 4, 5, 6
第四次点击:7、8、9、10、11、12、13、14
请帮助如何将我的输出变成这样:
第一次点击:0
第二次点击:1
第三次点击:2
第四次点击:3
load
注册一个事件处理器。如果事件处理程序再次调用 load
,它将添加另一个事件处理程序,等等
只是不要在事件处理程序中调用 load
。甚至根本没有定义 load
的理由:
const btn = document.querySelector('button');
let x = 0;
btn.addEventListener('click',() => {
console.log(x++)
});
在您的事件侦听器中,您正在调用加载函数,它会再次注册侦听器。第一次,您有 1 个听众。当您按下按钮时,您的侦听器会增加 x 并记录它,并调用加载以第二次注册侦听器。下次按下按钮时,...
const btn = document.querySelector('button')
let x = 0
const load = ()=>{
btn.addEventListener('click',()=>{
console.log(x++)
load()
})
}
load()
首次点击:0
第二次点击 : 1, 2
第三次点击:3, 4, 5, 6
第四次点击:7、8、9、10、11、12、13、14
请帮助如何将我的输出变成这样:
第一次点击:0
第二次点击:1
第三次点击:2
第四次点击:3
load
注册一个事件处理器。如果事件处理程序再次调用 load
,它将添加另一个事件处理程序,等等
只是不要在事件处理程序中调用 load
。甚至根本没有定义 load
的理由:
const btn = document.querySelector('button');
let x = 0;
btn.addEventListener('click',() => {
console.log(x++)
});
在您的事件侦听器中,您正在调用加载函数,它会再次注册侦听器。第一次,您有 1 个听众。当您按下按钮时,您的侦听器会增加 x 并记录它,并调用加载以第二次注册侦听器。下次按下按钮时,...