Become a better web programmer by writing efficient and modular code using ES6 and ES8 Key Features Learn to write asynchronous code and improve the readability of your web applications Explore advanced concepts such as closures, Proxy, generators, Promise, async functions, and Atomics Use different design patterns to create structures to solve common organizational and processing issues Book Description ECMAScript Cookbook follows a modular approach with independent recipes covering different feature sets and specifications of ECMAScript to help you become an efficient programmer. This book starts off with organizing your JavaScript applications as well as delivering those applications to modem and legacy systems. You will get acquainted with features of ECMAScript 8 such as async, SharedArrayBuffers, and Atomic operations that enhance asynchronous and parallel operations. In addition to this, this book will introduce you to SharedArrayBuffers, which allow web workers to share data directly, and Atomic operations, which help coordinate behavior across the threads. You will also work with OOP and Collections, followed by new functions and methods on the built-in Object and Array types that make common operations more manageable and less error-prone. You will then see how to easily build more sophisticated and expressive program structures with classes and inheritance. In the end, we will cover Sets, Maps, and Symbols, which are the new types introduced in ECMAScript 6 to add new behaviors and allow you to create simple and powerful modules. By the end of the book, you will be able to produce more efficient, expressive, and simpler programs using the new features of ECMAScript. What you will learn Organize JavaScript programs across multiple files, using ES modules Create and work with promises using the Promise object and methods Compose async functions to propagate and handle errors Solve organizational and processing issues with structures using design patterns Use classes to encapsulate and share behavior Orchestrate parallel programs using WebWorkers, SharedMemory, and Atomics Use and extend Map, Set, and Symbol to work with user-defined classes and simulate data types Explore new array methods to avoid looping with arrays and other collections Who this book is for If you're a web developer with a basic understanding of JavaScript and wish to learn the latest features of ECMAScript for developing efficient web applications, this book is for you.