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