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