所以......我最初试图创建自己的去抖功能,但现在让我们把它放在一边,因为我有一个全新的问题(我认为)。下面的代码将呈现随机数,我不知道为什么。有人可以解释一下这里发生了什么吗?<body><button id='butto'>Click</button><script>let buttonz = document.querySelector('#butto');buttonz.addEventListener('click',function(){ let aaa; console.log(aaa); //outputs 'undefined' - expected if (aaa){ clearTimeout(aaa); console.log(aaa); } aaa = setTimeout(()=>{ console.log('clicked'); aaa = undefined; console.log(aaa); //outputs 'undefined' - expected }, 2000); console.log(aaa); // outputs 'random number' - ???????????????? console.log(typeof aaa); // outputs 'Number' - ????????????????});</script></body>
1 回答

不负相思意
TA贡献1777条经验 获得超10个赞
由于这一行,您得到了一个数字:
aaa = setTimeout(...)
setTimeout 返回一个数字。请参阅文档:https ://www.w3schools.com/jsref/met_win_settimeout.asp
添加回答
举报
0/150
提交
取消