有人可以解释为什么每次我单击时都不打印hgk吗?当我每次单击按钮时,它都应运行反跳功能,并应打印“ hgk”,但为什么不打印它。你们任何人都可以清楚地向我解释吗?
const debounce=(fn,delay)=>{
let timer;
console.log('hgk');
return function(){
console.log('nbm');
clearTimeout(timer);
timer= setTimeout(fn,delay);
}
}
document.getElementById('button').addEventListener('click',debounce(()=>{
console.log('clicked')
},2000));
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>JS Bin</title>
</head>
<body>
</body>
</html>
[https://jsbin.com/bovesapoyu/edit?html,js,console,output)-hjk不在打印hjk。
有一个原因导致代码无法正常工作。在JavaScript第33行中,您引用了ID为“ button”的DOM元素。但是,当您查看HTML面板时,找不到它。