Foreword

Nicholas C. Zakas

When High Performance JavaScript was first published in 2010, we were on the cusp of a revolution in JavaScript on the web. Most browsers were still running non-optimized JavaScript interpreters and had done very little to optimize their caches or networking behavior. As a result, the authors of this book got together to compile all the best practices for speeding up both the loading and execution of JavaScript. At the time, the information in this book was the first distillation of JavaScript performance enhancement techniques in the world, and as a result, helped speed up a lot of the web applications you probably use today.

In 2008, Google released the first version of Chrome and promised to focus on performance. Chrome featured an optimized JavaScript engine called V8, and it forever changed the way we thought about JavaScript performance. Suddenly, the core JavaScript language was fast. Really fast. Other browsers soon followed suit and by 2014, every major browser had an optimized JavaScript engine with just-in-time (JIT) compilation.

The improvements in web browsers since 2010 have dramatically changed the performance characteristics of JavaScript and the web as a whole. As such, you may find some of the suggestions in this book yield only a small gain or no gain at all. That’s not to say the advice is bad, just that web browsers have caught up and fixed a lot of the problems that were endemic on the web when this book was first written. The core JavaScript language features, in particular, are quite fast now while DOM operations, though faster, still represent a large portion of runtime performance.

It’s also important to note that the research and recommendations in this book should be taken as a starting point, and not followed blindly without your own measurement and experimentation. Performance is not a static problem, and optimizing areas of your application that are already fast is a waste of time. Always profile your application to find hot spots and then look for ways to improve performance where it will matter the most.

Get High Performance JavaScript now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.