防抖

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>

<body>
<button id="btn">
  点击
</button><script>
  function yidian () {
    console.log('11',this)
  }
  const a=document.querySelector('button')
  a.addEventListener('click',dianji(yidian,1000))


  function dianji(func,dalay){
    let timer                       //使用闭包   定义计时器

   return function () {

     clearTimeout(timer)          //每次点击 都清除定时任务
    timer= setTimeout(()=>{
       func.call(this)            //将函数指向  标签本身

     },dalay)
   }
  }
</script>
</body>
</html>

posted @ 2022-03-14 09:20  undefinebo  阅读(41)  评论(0)    收藏  举报