JavaScript Q&A Logo
JavaScript Q&A Part of the Q&A Network

What are common performance optimizations in JavaScript?

Asked on Sep 01, 2024

Answer

Optimizing JavaScript performance involves several strategies to ensure your code runs efficiently and quickly. Here are some common techniques:
<!-- BEGIN COPY / PASTE -->
        // Example of using requestAnimationFrame for animations
        function animate() {
            // Animation logic here
            console.log("Animating...");
            requestAnimationFrame(animate);
        }
        requestAnimationFrame(animate);

        // Example of using event delegation
        document.querySelector("#parent").addEventListener("click", function(event) {
            if (event.target.matches(".child")) {
                console.log("Child element clicked:", event.target);
            }
        });

        // Example of using memoization
        const memoizedFactorial = (function() {
            const cache = {};
            return function factorial(n) {
                if (n in cache) {
                    return cache[n];
                } else {
                    if (n === 0) {
                        cache[n] = 1;
                    } else {
                        cache[n] = n * factorial(n - 1);
                    }
                    return cache[n];
                }
            };
        })();

        console.log(memoizedFactorial(5)); // Outputs: 120
        <!-- END COPY / PASTE -->
Additional Comment:
  • Use "requestAnimationFrame" for animations to ensure they run at the optimal frame rate for the user's display.
  • Implement event delegation by attaching a single event listener to a parent element to handle events for multiple child elements.
  • Use memoization to cache the results of expensive function calls and return the cached result when the same inputs occur again.
✅ Answered with JavaScript best practices.
← Back to All Questions