You are here:

Eloquent Javascript


Illustrations by various artists: Cover by Wasif Hyder. Computer (introduction) and unicycle people (Chapter 21) by Max Xiantu. Sea of bits (Chapter 1) and weresquirrel (Chapter 4) by Margarita Martínez and José Menor. Octopuses (Chapter 2 and 4) by Jim Tierney. Object with on/off switch (Chapter 6) by Dyle MacGregor. Regular expression diagrams in Chapter 9 generated with by Jeff Avallone. Game concept for Chapter 15 by Thomas Palef. Pixel art in Chapter 16 by Antonio Perdomo Pastor.

The second edition was made possible by 454 financial backers, with significant contributions from Mozilla, Hack

Reactor, and Ghostery.



(Part 1: Language)Values, Types, and Operators

Program Structure


Data Structures: Objects and Arrays

Higher-order Functions

The Secret Life of Objects

Project: Electronic Life

Bugs and Error Handling

Regular Expressions


Project: A Programming Language

(Part 2: Browser)JavaScript and the Browser

The Document Object Model

Handling Events

Project: A Platform Game

Drawing on Canvas


Forms and Form Fields

Project: A Paint Program

(Part 3: Node)Node.js

Project: Skill-Sharing Website

Other pages

A paper version of Eloquent JavaScript, including a bonus chapter, is being brought out by No Starch Press. They also sell an ebook version more polished than the files linked below.

Code sandbox and exercise solutions

Errata for the paper book

This book as a single PDF file (& small version for mobile)

This book as an EPUB file

This book as a MOBI (Kindle) file

The first edition of the book