For better or worse, JavaScript is single-threaded by design. For over 50 years Moore’s Law has described persistent exponential growth in computational power, but physical limitations have slowed that trend. Advancement now comes through the use of multiple CPUs and cores. This is fine for languages featuring threads and task-based architectures. But what about JavaScript?
Thankfully, new paradigms handle parallelism over the web. Web Worker constructs allow long-running code to execute in the background without blocking the UI. Shared Memory and Atomic operations allow true sharing of data among worker processes. Learn to leverage these exciting features to responsibly improve the performance and responsiveness of your web applications!