Book Brief · P3 (Prompt → Program → Proof)

Eloquent JavaScript — Fourth Edition

Marijn Haverbeke · No Starch Press · 456 pp · 2024

JavaScript Web + Node Projects Open Web Book

P3 Summary: Prompt → Program → Proof

Prompt & Question

Prompt: Create a concise, self-contained brief of Eloquent JavaScript (4e) for developers deciding whether to use it for learning or teaching.

Question: What is covered, what’s new/modernized in the 4th edition, how is it structured (language → browser/Node → projects), and where can you read it online?

Data (Sources)

  • No Starch Press product page (edition, pages, ISBN, description).[1]
  • Official online book (4th ed., 2024) + license/code sandbox pages.[2], [3]
  • Retailer bibliographic details (publication date Nov 5, 2024; pages; ISBN).[4], [5]
  • O’Reilly listing with detailed contents and framing (Language → Browser/Node, projects).[6], [7]
  • Booksellers with quick summaries of revised chapters (async, modules, objects).[8]

Logic (How we evaluate)

  1. Use publisher and official site for canonical facts and online access/licensing.
  2. Cross-check pages/ISBN/date with multiple retailers.
  3. Use O’Reilly/B&N for Table-of-Contents structure and project chapters.

Program (Driver)

A tiny “check” harness ensures every data-claim has at least one footnote in Citations.

// Pseudocode
const claims=[...document.querySelectorAll('[data-claim]')];
for (const c of claims) assert(c.querySelector('sup a[href^="#fn-"]'));
Proof = Reason Why + Check. “Reason Why” summarizes evidence; “Check” verifies structure.

Answer (TL;DR)

The 4th edition is a modernized, project-driven introduction to JavaScript that teaches the language first, then applies it in the browser and in Node.js, with five guided projects; you can also read it free online under a Creative Commons license (book text) with code under MIT.[6], [7], [2]

Reason Why (Evidence)

The No Starch page lists the 4th edition’s specs (456 pp; ISBN 9781718504103) and positions it as a practical, example-rich introduction; it also provides purchase and sample materials.[1]

The official site clearly labels the book “4th edition (2024)” and states the text’s Creative Commons BY-NC license and that “all code … may also be considered licensed under an MIT license.”[2]

Retailer records place the print publication on November 5, 2024, with 456 pages and the listed ISBNs, matching the publisher data.[4], [5]

Check (Self-test)

Automated checks: (1) every claim cites a source; (2) required sections exist; (3) core metadata parses.

    Running checks…

    Dev Track: What You’ll Learn in the 4th Edition

    1. Language first. Part I covers core JavaScript: values & types, program structure, functions, objects & arrays, higher-order functions, object-oriented patterns, errors, regex, modules, and async programming.[9], [7]
    2. Two environments. The second half shows how to apply JS in the browser and in Node.js, with practical APIs and patterns.[6]
    3. Five projects. Full-chapter projects (e.g., robot, a tiny programming language) develop larger programs step by step.[9], [7]
    4. Modernized chapters. Descriptions highlight overhauls to asynchronous programming, modules, and objects to reflect current JavaScript style.[8]
    5. Open web version + code sandbox. The whole book is readable online, with downloadable source and an in-browser runner for chapter code and solutions.[2], [3]
    Takeaway: Use it as a beginner-to-intermediate ramp that blends fundamentals, idiomatic modern JS, and hands-on projects across browser and Node.

    Themes

    1. Project-based learning. Chapters interleave concepts with cumulative projects that force real program structure.[7]
    2. Idiomatic modern JavaScript. Emphasis on modules and async patterns updated for today’s ecosystem.[8]
    3. Accessible & open. Free online reading under Creative Commons; code MIT-licensed encourages tinkering and teaching.[2]

    Studies & Context

    • Edition & release. No Starch lists the 4e; retailers confirm a Nov 5, 2024 ship date and 456 pages.[1], [4], [5]
    • Contents detail. O’Reilly/B&N entries reflect the two-part structure and project chapters used in the course-style progression.[7], [9]

    Glossary (quick reference)

    Module
    A file or package that exports values for import elsewhere; the 4e treats modern module patterns in depth.[9]
    Asynchronous programming
    Managing tasks that complete later (events, promises, async/await); extensively revised in this edition.[8], [9]
    Node.js
    JavaScript runtime for servers and tooling; the book’s second half applies JS beyond the browser.[6]

    Book Metadata

    • Title: Eloquent JavaScript, 4th Edition: A Modern Introduction to Programming.[1]
    • Author: Marijn Haverbeke.[1]
    • Publisher: No Starch Press.[1]
    • Pages: 456; ISBN (paperback): 978-1718504103; eBook ISBN: 978-1718504110.[1], [4]
    • Publication: Publisher lists 2024; retailers show print date Nov 5, 2024.[1], [5]
    • Official site: EloquentJavaScript.net hosts the full 4e online and code downloads/sandbox.[2], [3]

    Citations (for this page)

    1. No Starch Press — product page (edition, pages, ISBN, description). :contentReference[oaicite:0]{index=0}
    2. Official site — “4th edition (2024)”, CC BY-NC text & MIT-licensed code. :contentReference[oaicite:1]{index=1}
    3. Official code & solutions sandbox/downloads. :contentReference[oaicite:2]{index=2}
    4. Amazon — publication date Nov 5, 2024; ISBN 1718504101 / 9781718504103. :contentReference[oaicite:3]{index=3}
    5. Warwick’s — paperback details: Nov 5, 2024; 456 pages. :contentReference[oaicite:4]{index=4}
    6. O’Reilly — book page describing two environments (browser & Node.js). :contentReference[oaicite:5]{index=5}
    7. O’Reilly — detailed contents. :contentReference[oaicite:6]{index=6}
    8. Bookswagon — summary of revised chapters (async, modules, objects). :contentReference[oaicite:7]{index=7}
    9. Barnes & Noble — table of contents. :contentReference[oaicite:8]{index=8}

    This brief paraphrases public information; it does not reproduce the book’s text.