[Good book recommendation] Deep understanding of modern JavaScript


Insert image description here

TJ Crowder is a software engineer with 30 years of experience. He has spent at least half of his career developing in JavaScript. He runs software contracting and products company Farsight Software. He often helps people on Stack Overflow, where he is one of the top ten contributors and a top contributor to JavaScript tags. When he's not working or writing, he's always spending quality time with his beautiful, supportive wife and wonderful son.

Reasons for recommendation

JavaScript is a rapidly evolving language, and it can be challenging for experienced developers to keep up with all the newly added features. This book not only takes you on a journey to explore new features of the world's languages, but also shows you how to track the language's subsequent development. This book first introduces the process of adding new features to JavaScript, including how this process is managed and by whom; then it describes each new feature or old feature with adjustments in depth and details, and explains example usage, possible Pitfalls; this book will also provide professional advice on how to replace old usage with new features.

If you are a JavaScript (or TypeScript) developer and want to learn about the latest features that have been added to JavaScript over the past few years and how to stay on top of the new developments as the language continues to evolve, then Understanding Modern JavaScript Deeply is for you. . You can find almost everything in Modern JavaScript Deeper on the web as long as you look hard enough and be cautious about the sites you trust; Modern JavaScript Deeper Understands provides all the technical details while telling you how to track Constant changes.

brief introduction

Chapter 1, new features of ES2015~ES2020 and subsequent versions - first introduces various roles and some important terms in the JavaScript world; then describes the definition of "new features" in "In-depth Understanding of Modern JavaScript", and the new features The process of adding features to JavaScript, including how this process is managed, who manages it, and how to track and participate in this process; and finally introduces some tools needed to use new features in old environments (or use the latest in current environments) Tools required for the feature).

Chapter 2, Block-level Scope Declaration: let and const - Covers the new declaration keywords let and const and the new scopes they support, provides an in-depth introduction to scope in loops, and focuses on the processing of scopes in for loops.

Chapter 3, New Features of Functions - Covers various new features related to functions: arrow functions, default parameter values, "rest" parameters, name attributes, and other syntax improvements.

Chapter 4, Classes - Covers the new class features: basic concepts, subclassing, super, creating subclasses of built-in objects such as Array and Error, and the new.target attribute. Private fields and other features in the proposal process are covered in Chapter 18.

Chapter 5, New Features of Objects - Covers computable property names, abbreviated syntax for properties, prototypes for getting and setting objects, new Symbol types and their relationship with objects, method syntax, property order, property expansion syntax, and a host of new object methods.

Chapter 6, Iterables, Iterators, for-of Loops, Iterable Unrolling Syntax, and Generators—covers iteration, a powerful new tool for sets and lists, and generators, a Powerful new way to interact with functions).

Chapter 7, Destructuring - Covers the important new syntax of destructuring and how to use it to extract data from objects, arrays, and other iterables. This chapter includes syntax for default values, nested extractions, and more.

Chapter 8, Promises—Dive into this important new tool for working with asynchronous processes.

Chapter 9, Asynchronous Functions, Iterators, and Generators—Details the new async/await syntax (which allows you to use familiar logic flow structures in asynchronous code), as well as how asynchronous iterators and generators work, and There are new for-await-of loops.

Chapter 10, Template Literals, Tag Functions, and New String Features—Describes template literal syntax, tag functions, and many new string features, such as better Unicode support, updates to common methods, and many new methods.

Chapter 11, New Array Features, Typed Arrays - Covers many new array methods, updates to various existing methods, typed arrays (such as Int32Array), and advanced features for interacting with typed array data.

Chapter 12, Maps and Sets—Introduces the all-new keyed collections Maps and Sets, as well as the "weak" versions of these collections, WeakMap and WeakSet.

Chapter 13, Modules—Dive into this exciting and powerful way to organize code.

Chapter 14, Reflection and Proxy - Covers the powerful dynamic metaprogramming features of Reflect and Proxy objects and the relationship between them.

Chapter 15, Regular Expressions Updates - Describes all the updates that have come to regular expressions over the past few years, such as new flags, named capture groups, reverse lookups, and new Unicode features.

Chapter 16, Shared Memory - Covers the complex and tricky aspects of sharing memory across threads in JavaScript programs, including SharedArrayBuffer and Atomics objects, basic concepts, and pitfall notes.

Chapter 17, Other Features - Covers many new features that are not suitable for other chapters: BigInt, new integer literal syntax (binary, new octal), exceptions that omit catch bindings, new Math methods, exponentiation operators, extensions to the Math object, tail recursion optimization, null coalescing, optional chaining, and "Specification Appendix B" (browser only) features defined for compatibility reasons.

Chapter 18, Upcoming Class Features - Describes enhanced features for classes in stage 3 of the proposal process: public field declarations, private fields, and private methods.

Chapter 19, Looking Ahead - Finally, describes some improvements currently in progress: top-level await, WeakRef and cleanup callbacks, regex matching index, Atomics.asyncWait, some new syntax features, old regex features, and Various upcoming standard library extensions.

Appendix, Outstanding Features and Corresponding Chapters (with apologies to JK Rowling) - Provides a list of new features and indicates the chapter to which each feature belongs. These lists include: alphabetical features, new basics, new syntax, keywords, operators, loops, etc., new literal forms, extensions and updates to the standard library, and other features.

"In-depth Understanding of Modern JavaScript" code download

You can download the examples and code lists of each chapter at https://thenewtoys.dev/bookcode or https://www.wiley.com/go/javascript-newtoys, or by scanning the QR code on the back cover.

Who should read this book

Readers of "Understanding Modern JavaScript Deeply" should:

● Have at least a basic understanding of JavaScript.

● Want to know about new features that have been added over the past few years.

This is not an academic book written for experts, but a practical book for JavaScript developers.

Almost everyone who picks up Understanding Modern JavaScript knows some of the content in the book, but almost no one picks up the book knowing everything about it. Maybe you already know the basics of let and const, but you haven't fully mastered the async function. Maybe Promise is old syntax to you, but you see some unfamiliar syntax in some modern code. You can find all the new features of ES2015~ES2020 (and subsequent versions) in "In-depth Understanding of Modern JavaScript".

Why do you recommend this book? Let’s see what the experts say.

Throughout the history of ECMAScript, the launch of the ES6 version is undoubtedly a turning point in the history of the front-end. ES6 introduces the concept of classes, block-level scope, destructuring and other features, transforming the JavaScript language into an enterprise-level development language. Modern browser support for ES6 is close to 98%, so the new syntax of ES6 can be run directly in the browser. Front-end students can remove ES5 compatibility support from the compiler. New features in subsequent versions of ES2015 are also gradually implemented in JavaScript. For learners and users of early versions of JavaScript, there are a lot of knowledge points that need to be updated. This book just hits this point. In addition to introducing in detail the new features of ES2015~ES2020 and the reasons for the new feature proposals, it also compares the old and new practices. A very timely book, recommended reading.

——Pu Songyang (nick name Qin Yue), head of front-end standardization at Alibaba, member of TC39, author of "Serverless Introduction Course"

Starting from ES6, JavaScript's language features have faced explosive growth, and the number of new features is enough to create a new language. For our generation of old programmers, rather than studying the specifications themselves, of course we still hope for a book that not only systematically introduces new features but also provides best practices. However, considering the speed of language development, we hope that such a book will be published every year. book.

——Cheng Shaofei (winter) Chief Consultant of Web Teaching at Kaikeba, Former Alibaba Senior Technical Expert

As for the new features of ES, there will be risks if they are adopted, and there will be worries if they are not implemented. Nowadays, many ES new features have become de facto standards, so whether everyone is willing to learn and use them or not, we need to face this problem head-on. This book basically covers the core features between ES2015~ES2020 and is a must-have book for JavaScript-related developers. The author is the trustworthy TJCrowder, who actively participated in many proposals of TC39. From the content point of view, this book is also very professional. It is easy to understand and can explain the necessary points in a simple way. It is a rare good book and highly recommended.

——Sang Shilong (known as Uncle Lang) Node.js evangelist, author of "Wolf Book"

This is a professional book that provides a comprehensive and in-depth introduction to ES2015~ES2020, explaining how the front-end in the new era should write elegant and efficient JavaScript
code. Many beginners don’t know how to get started when faced with these new features. This book provides a rich collection of examples and documents to help you improve your coding skills. It is highly recommended!

——Fu Qiang (Xiaojuan) Head of Sina Mobile Front-end

ECMAScript Since ES6, the annual version release has significantly accelerated the implementation of new features. This book breaks down ECMAScript from top to bottom
, starting from the background of new features, explaining feature design in detail, and how to use new features in various specific scenarios to obtain more readable and robust code, helping readers quickly get started with these new tools. This book is definitely not to be missed.

——Wu Chengzhong (Hua Ming Zhaolang) Node.js Core Collaborator, TC39 representative

In the field of big data and visualization, Python and JavaScript are two powerful tools for front-end and back-end construction. Due to the richness and standardization of online materials and APIs, Python is not difficult to learn by yourself until you are proficient. Since JavaScript was born at the end of the last century, it has gone through many versions of specifications. In recent years, it has evolved rapidly with the Web boom. New frameworks and standards have emerged one after another, and beginners often hesitate to move forward. The original author of this book is a top international software system developer, and its translator has also been in the Internet industry for many years, with profound front-end skills and rich experience. This book details the new development and new applications of JavaScript language in the past five years. It is actually good news for front-end enthusiasts, engineers, and big data interactive system researchers, so it is highly recommended.
——Shi Lei, professor at School of Computer Science, Beihang University, paper chair of China Visualization and Visual Analysis Conference

Front-end development requires lifelong learning, and programmers need to truly live and learn. JavaScript is a very dynamic language, and it is also a language that is often used and constantly updated. Although there are many books that explain the basics of JavaScript, there are not many books that can keep pace with the times and introduce new features of JavaScript. This book covers almost all new features of ES2015~ES2020, as well as some new features currently in stage 3, and gives a wealth of examples to help readers understand. The book is easy to understand and frequently compares new features to previous syntax features. Even students who don't know JavaScript can quickly get started with this book and develop an interest and sense of accomplishment in front-end development. This is one of the essential books for you to become a JavaScript master.
——Ma Jianzhu, Associate Professor, Institute of Artificial Intelligence, Peking University

Summarize

JS is the most important foundation for front-end developers. After reading this book, you will definitely gain something, maybe more than you expected. If you are interested in this book, you can click on the link to purchase it directly: direct link

Guess you like

Origin blog.csdn.net/qq_38951259/article/details/135442921