The Little JavaScript Book
The Little JavaScript Book
All you wanted to know about JavaScript but never dared to ask.
About the Book
Why another book on JavaScript? As much as I love masterpieces like "You don't know JS" and "Eloquent JavaScript" I feel there is the need for a book which takes the reader by hand, challenging enough, yet concise.
In this book you'll learn the hard parts of JavaScript without the gimmicky packaging that comes with some tutorials, and most important without arid academic lucubration. It aims to be a concise reference, while never peeking too much into the JavaScript spec.
Enjoy the reading!
Bundles that include this book
Table of Contents
-
-
Intro. Few words about the book.
- A brief history of the book
- Structure of the book
- Who this book is for?
- Typographic conventions
- What’s the best way for following the examples?
- Errata and other requests
- About the author
- Acknowledgments
-
Intro. Few words about the book.
-
Part 1 - JavaScript, the “hard” parts
-
Chapter 1. Getting started with JavaScript, and a glossary.
- The importance of being JavaScript
- ECMAScript, and other technical terms
- A special note on modern JavaScript
-
Chapter 2. Prologue: JavaScript fundamentals.
- Strings, numbers, variables and all in between
- Standing on the shoulders of a giant object
- 50 flavors of JavaScript functions
- JavaScript’s module system
- Conclusions
-
Chapter 3. A whirlwind tour of JavaScript engines.
- JavaScript engines and Global Memory
- Global Execution Context and Call Stack
- Asynchronous JavaScript, Callback Queue, and the Event Loop
- Callback hell and Promises
- Promises and error handling
- Promises and Microtask Queue
- More on Promise: combinators
- Dynamic imports
- Asynchronous evolution: from Promises to async/await
- Conclusions
-
Chapter 4. Closures and modules in JavaScript.
- Global madness
- Demystifying closures
- The need for closures
- Hoisting, we need to talk
- Conclusions
-
Chapter 5. JavaScript encounters of the third kind (with objects!)
- Everything is an object!
- Creating and linking objects
- Constructing JavaScript objects
- Checking the linkage
- Taking care of JavaScript objects
- Class illusion
- Conclusions
-
Chapter 6. This in JavaScript.
- Demystifying this
- Rule number 1: falling back to the global this
- Rule number 2: when this is my host object
- Rule number 3: tell me who is this
- Rule number 4: new binding
- Arrow functions and this
- Conclusions
- BONUS exercise: Creeping into this
-
Chapter 7. Types, coercion, and comparison in JavaScript.
- Primitive types in JavaScript
- When a number becomes a string
- I’m not a number!
- Comparison operators: equal equal or not?
- Primitives and objects
- Conclusions
-
Chapter 1. Getting started with JavaScript, and a glossary.
-
Part 2 - Working with JavaScript in the browser
-
Chapter 8. Shaping HTML elements with JavaScript.
- The Document Object Model
- Nodes, elements, and DOM manipulation
- DOM and events
- How to dynamically add DOM elements with JavaScript
- Conclusions
-
Chapter 9. Working with asynchronous JavaScript.
- REST API and XMLHttpRequest
- XMLHttpRequest in action: generating lists with HTML and JavaScript
- Building HTML lists with JavaScript (and debugging classes)
- Asynchronous evolution: from XMLHttpRequest to Fetch
- Rebuilding Fetch API from scratch (for fun and profit)
- Conclusions
-
Chapter 10. HTML forms and playing with the storage API.
- A re-introduction to HTML forms
- HTML forms in action
- Extracting data from an HTML form
- Getting to know localStorage and laying out our classes
- Interacting with localStorage and this comes to bite again
- Going idiomatic with FormData
- The formdata event
- Conclusions
-
Chapter 11. First steps with TypeScript.
- Laying down the foundations
- Getting started with TypeScript
- Digging deeper into TypeScript types
- TypeScript types, objects, and interfaces
- Narrowing types, Partial, and type aliases
- Assembling a TypeScript class
- Wiring up our classes and a bit of JSDoc
- ECMAScript private fields and the TypeScript private modifier
- Conclusions
-
Chapter 8. Shaping HTML elements with JavaScript.
-
Part 3 - Appendix
- A delightful collection of little JavaScript recipes
-
Solutions
- Chapter 2. Prologue: JavaScript fundamentals
- Chapter 4. Closures and modules in JavaScript
- Chapter 6. This in JavaScript
- Chapter 11. First steps with TypeScript
- Changelog
The Leanpub 60 Day 100% Happiness Guarantee
Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.
You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!
So, there's no reason not to click the Add to Cart button, is there?
See full terms...
Earn $8 on a $10 Purchase, and $16 on a $20 Purchase
We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.
(Yes, some authors have already earned much more than that on Leanpub.)
In fact, authors have earnedover $13 millionwriting, publishing and selling on Leanpub.
Learn more about writing on Leanpub
Free Updates. DRM Free.
If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).
Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.
Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.
Learn more about Leanpub's ebook formats and where to read them