JavaScript for impatient programmers
Please support this book: buy it or donate
(Ad, please don’t block.)

2 FAQ: Book and supplementary material

This chapter answers questions you may have and gives tips for reading this book.

2.1 How to read this book

2.1.1 In which order should I read the content in this book?

This book is three books in one:

The quizzes and exercises play an important part in helping you practice and retain what you have learned.

2.1.2 Why are some chapters and sections marked with “(advanced)”?

Several chapters and sections are marked with “(advanced)”. The idea is that you can initially skip them. That is, you can get a quick working knowledge of JavaScript by only reading the basic (non-advanced) content.

As your knowledge evolves, you can later come back to some or all of the advanced content.

2.1.3 Why are some chapters marked with “(bonus)”?

The bonus chapters are only available in the paid versions of this book (print and ebook). They are listed in the full table of contents.

2.2 Digital editions

2.2.1 How can I buy a digital edition of this book?

There are two digital editions of “JavaScript for impatient programmers”:

The home page of this book describes how you can buy them.

2.2.2 How do I submit feedback and corrections?

The HTML version of this book (online, or ad-free archive in the paid version) has a link at the end of each chapter that enables you to give feedback.

2.2.3 How do I get updates for the downloads I bought at Payhip?

2.3 Notations and conventions

2.3.1 What is a type signature? Why am I seeing static types in this book?

For example, you may see:

Number.isFinite(num: number): boolean

That is called the type signature of Number.isFinite(). This notation, especially the static types number of num and boolean of the result, are not real JavaScript. The notation is borrowed from the compile-to-JavaScript language TypeScript (which is mostly just JavaScript plus static typing).

Why is this notation being used? It helps give you a quick idea of how a function works. The notation is explained in detail in a 2ality blog post, but is usually relatively intuitive.

2.3.2 What do the notes with icons mean?

  Reading instructions

Explains how to best read the content.

  External content

Points to additional, external, content.


Gives a tip related to the current content.


Asks and answers a question pertinent to the current content (think FAQ).


Warns about pitfalls, etc.


Provides additional details, complementing the current content. It is similar to a footnote.


Mentions the path of a test-driven exercise that you can do at that point.


Indicates that there is a quiz for the current (part of a) chapter.