JavaScript Q&A Logo
JavaScript Q&A Part of the Q&A Topic Learning Network
Real Questions. Clear Answers.
Ask any question about JavaScript here... and get an instant response.
Q&A Balloon Q&A Logo
Post this Question & Answer:

How can I debounce a function to limit how often it runs?

Asked on Mar 08, 2026

Answer

Debouncing is a technique to limit the rate at which a function is executed. It ensures that the function is only called once after a specified delay has passed since the last time it was invoked.
<!-- BEGIN COPY / PASTE -->
        function debounce(func, delay) {
            let timeoutId;
            return function(...args) {
                clearTimeout(timeoutId);
                timeoutId = setTimeout(() => {
                    func.apply(this, args);
                }, delay);
            };
        }

        // Usage example
        const handleResize = debounce(() => {
            console.log("Window resized");
        }, 300);

        window.addEventListener('resize', handleResize);
        <!-- END COPY / PASTE -->
Additional Comment:
  • The "debounce" function takes two arguments: "func" (the function to debounce) and "delay" (the time in milliseconds to wait before calling the function).
  • It returns a new function that can be used in place of the original function.
  • The "clearTimeout" method is used to reset the timer each time the debounced function is called, ensuring that "func" is only executed after the specified delay has elapsed without further calls.
  • In the example, "handleResize" is debounced to only log "Window resized" if the window resize event stops firing for 300 milliseconds.
✅ Answered with JavaScript best practices.
← Back to All Questions

Q&A Network
Real Questions. Clear Answers.
JavaScript
Ask Questions / Get Answers about JavaScript!
Photography
Ask Questions / Get Answers about Photography!
Chatbots
Ask Questions / Get Answers about Chatbots!
Tailwind
Ask Questions / Get Answers about Tailwind!
Web Languages
Ask Questions / Get Answers about Web Languages!
Networking
Ask Questions / Get Answers about Networking!
Robotics
Ask Questions / Get Answers about Robotics!
Sound Design
Ask Questions / Get Answers about Sound Design!
AI
Ask Questions / Get Answers about AI!
AI Design
Ask Questions / Get Answers about AI Design!
Web Hosting
Ask Questions / Get Answers about Hosting!
Social Media Psychology
Ask Questions / Get Answers about Social Media Psychology!
Business Finance
Ask Questions / Get Answers about Business Finance!
Film Production
Ask Questions / Get Answers about Film Production!
Podcasting
Ask Questions / Get Answers about Podcasting!
VR & AR
Ask Questions / Get Answers about VR & AR!
AI Video
Ask Questions / Get Answers about AI Video!
Cloud Computing
Ask Questions / Get Answers about Cloud Computing!
AI Ethics
Ask Questions / Get Answers about AI Ethics!
Security
Ask Questions / Get Answers about Website Security!
AI Coding
Ask Questions / Get Answers about AI Coding!
AI Audio
Ask Questions / Get Answers about AI Audio!
AI Writing
Ask Questions / Get Answers about AI Writing!
Graphic Design
Ask Questions / Get Answers about Graphic Design!
CSS
Ask Questions / Get Answers about CSS!
AI Images
Ask Questions / Get Answers about AI Images!
3D Design
Ask Questions / Get Answers about 3D Design!
Performance
Ask Questions / Get Answers about Web Vitals!
Quantum
Ask Questions / Get Answers about Quantum Computing!
DevOps
Ask Questions / Get Answers about DevOps!
Data Science
Ask Questions / Get Answers about Data Science!
Motion Graphics
Ask Questions / Get Answers about Motion Graphics!
Nursing
Ask Questions / Get Answers about Nursing!
SEO
Ask Questions / Get Answers about SEO!
Bootstrap
Ask Questions / Get Answers about Bootstrap!
Animation
Ask Questions / Get Answers about Animation!
Illustration
Ask Questions / Get Answers about Illustration!
HTML
Ask Questions / Get Answers about HTML!
AI Education
Ask Questions / Get Answers about AI Education!
AI Marketing
Ask Questions / Get Answers about AI Marketing!
UI/UX Design
Ask Questions / Get Answers about UI/UX Design!
IoT
Ask Questions / Get Answers about IoT!
AI Business
Ask Questions / Get Answers about AI Business!
Video Editing
Ask Questions / Get Answers about Video Editing!
Web Development
Ask Questions / Get Answers about Web Development!
MobileDev
Ask Questions / Get Answers about Mobile Developement!
WordPress
Ask Questions / Get Answers about WordPress!
Monetization
Ask Questions / Get Answers about Ad & Monetization!
Analytics
Ask Questions / Get Answers about Analytics!
Digital Burnout
Ask Questions / Get Answers about Digital Burnout!
Creative Writing
Ask Questions / Get Answers about Creative Writing!
Cybersecurity
Ask Questions / Get Answers about Cybersecurity!