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? Pending Review

Asked on Feb 22, 2026

Answer

Debouncing is a technique used to limit the rate at which a function is executed. It ensures that the function is only called after a specified delay has elapsed 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 logMessage = () => console.log("Function executed!");
        const debouncedLogMessage = debounce(logMessage, 1000);

        // Call the debounced function
        debouncedLogMessage();
        debouncedLogMessage();
        debouncedLogMessage();
        // "Function executed!" will be logged only once after 1 second
        <!-- END COPY / PASTE -->
Additional Comment:
  • The "debounce" function takes two arguments: the function to debounce ("func") and the delay in milliseconds ("delay").
  • It returns a new function that clears the previous timeout and sets a new one each time it's called.
  • The "apply" method is used to maintain the correct "this" context and pass arguments to the original function.
  • In the example, "debouncedLogMessage" will only log "Function executed!" once, no matter how many times it's called within the 1-second delay.
✅ Answered with JavaScript best practices.
← Back to All Questions

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