js防抖函数

单位时间内多次触发只会执行一次


<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>防抖函数title>
head>
<body>
	<button id="btn">点击button>
<script>
	//500毫秒内多次触发只会执行一次,
	function de(){
		let timer;

		return function(){
			if(timer) clearTimeout(timer);//如果500毫秒内又一次触发,则会重新计算时间

			timer = setTimeout(() => {
			  console.log('dddd')
			}, 500)
		}
	}
	document.querySelector('#btn').addEventListener('click',de())
script>
body>
html>

你可能感兴趣的:(js,防抖函数)