Goodreads helps you keep track of books you want to read.
Start by marking “JavaScript: The Good Parts” as Want to Read:
JavaScript: The Good Parts
Enlarge cover
Rate this book
Clear rating
Open Preview

JavaScript: The Good Parts

4.23  ·  Rating details ·  8,007 ratings  ·  530 reviews
Most programming languages contain good and bad parts, but JavaScript has more than its share of the bad, having been developed and released in a hurry before it could be refined. This authoritative book scrapes away these bad features to reveal a subset of JavaScript that's more reliable, readable, and maintainable than the language as a whole--a subset you can use to cre ...more
Paperback, 153 pages
Published May 1st 2008 by Yahoo Press (first published January 1st 2008)
More Details... Edit Details

Friend Reviews

To see what your friends thought of this book, please sign up.

Reader Q&A

To ask other readers questions about JavaScript, please sign up.
Popular Answered Questions
Ron Inbar I think of this book as the JavaScript equivalent to "The C Programming Language," so if you happen to have learned C from that book, chances are you'…moreI think of this book as the JavaScript equivalent to "The C Programming Language," so if you happen to have learned C from that book, chances are you'll like this one too.

I had to read the chapters on objects, functions and inheritance about six times each until I finally got it, but that was totally doable because the book is so short, and in the end I had a very firm grasp on the language.


Community Reviews

Showing 1-30
Average rating 4.23  · 
Rating details
 ·  8,007 ratings  ·  530 reviews

More filters
Sort order
Start your review of JavaScript: The Good Parts
A. Jesse
Oct 11, 2010 rated it really liked it
A short, dense book, describing a subset of Javascript and distinguishing which parts of the language "should" be used and which not. The author wrote JSLint, a widely-used tool for enforcing his preferences on your scripts. The preferences he wrote into JSLint are reflected here.

Some of his opinions seem obsessive and eccentric (it's not OK to write "i++"?), but others are invaluable. For example, you should make a habit of following the Kernighan & Ritchie style of braces: that is, you should
Barry King
Jan 03, 2015 rated it it was amazing
Returning to serious JS programming after a long hiatus. When you pick up the rhino book (O'Reilly's definitive tome on JS) and thumb through it, you notice that it is written from the perspective of JS being introduced to the industry. It's all functional programming, browser-oriented, and thought of as an API to "make the monkey dance", rather than a serious programming language.

This book takes the opposite view in nearly every way. It's written from the perspective of someone who has lived wi
Lea Verou
Jan 07, 2010 rated it really liked it
Recommends it for: Programmers (of other languages) who want to learn JavaScript
Crockford's book is already considered one of the classic JS books and I agree. Not because its complete (it only touches ECMAScript core, not even DOM), or particularly good at making things seem simple (it probably makes them look overcomplicated). Its because it approaches JavaScript in a completely different way than probably any other book you've read. It broadens your horizons as a JS developer, makes you think differently. And as soon as you finish it, you haven't only learned a few facts ...more
William Cline
May 14, 2012 rated it liked it
For an experienced developer who’s hacked things together while glancing at an online reference, JavaScript: The Good Parts seems like a good place to start learning the language properly. As the title indicates, the book consists of Crockford’s opinions about how to use JavaScript’s better features and avoid the bad ones. Being a relative JS novice, it’s hard for me to evaluate his judgements, but I’m glad to now have at least someone’s best practices to work with. Crockford’s descriptions of J ...more
Dec 10, 2014 rated it did not like it
As an experienced JavaScript programmer, I was looking around for introductory books for my friends who are just starting their programming journeys so this book came up in the usual lists of modern JavaScript books.

This book was a huge disappointment. The authors ability to turn even simple concepts into confusing railroad diagrams coupled with explanations that do not make any sense even to someone well versed in the subject is absolutely astounding.

It feels like the book doesn't quite know w
Feb 14, 2012 rated it liked it
I don't think the importance of JavaScript in our current world can be overstated. Nor can the work of Douglas Crockford to legitimize JavaScript by extracting and promoting subsets of the language which are brilliantly designed. In the case of JSON, he recognized JavaScript's object notation as a wonderful and concise way to describe data structures. In my opinion, JSON is vastly superior to XML in every way.

I came to this book after watching Crockford's wonderful companion lecture at Google Te
Aug 18, 2012 rated it it was ok
Shelves: compsci, 2012
I don't understand the consistently high rating this book gets. While the concept is excellent - filet-o-javascript - the execution has serious failings.

It starts well with the early chapters but as soon as it reaches the the more challenging stuff - clousures and prototypical inheritance - I found myself having to reach for the superior 'Object-Oriented JavaScript' to understand what was being described each time.

I don't care how many times you re-read it - per the author's admonition at the be
Chase DuBois
Jun 19, 2012 rated it really liked it
Shelves: tech
Many programming books are funny because their authors make jokes. Why's (Poignant) Guide to Ruby comes to mind. Javascript: The Good Parts, however, is the first programming book that has ever made me laugh out loud when the author wasn't telling a joke. Case in point:
undefined and NaN are not constants. They are global variables, and you can change their values. That should not be possible, and yet it is. Don't do it.
Any developer who has ever written Javascript is likely to have been confound
Jun 15, 2012 rated it really liked it
Recommends it for: people who think they know JavaScript
Recommended to Brian by: Dan
(4.0) Opened my eyes to how JavaScript really works, but had some bad bugs

I've been using JS for a while now, just throwing stuff together and getting things working, copying patterns observed elsewhere. At times I saw some unfamiliar structures (particularly of the anonymous functions that return functions getting invoked immediately variety, etc.), but chose to ignore them. All the while I assumed it was actually an OO language. How wrong I was.

This was quite helpful for someone familiar with
Ettore Pasquini
Jun 06, 2012 rated it it was amazing
Shelves: technology
My new JavaScript reference. This book takes a stand in defining the good features of JavaScript banning the rest as evil or not useful. It even introduces a linter that enforces the above! It does all of this in 150 pages or so. The "good" parts are actually described in the first 100 pages. That's it.

The book is not for complete novices to programming: e.g. the while loop is explained in 2 lines. Syntax diagrams are used to explain every construct. However, if you have programmed in other lang
Ammar Lakis
Sep 03, 2017 rated it it was ok
I have mixed feelings about this book.
While the book navigates through the most important and interesting part of the JavaScript language, it sometimes falls into verbose explanations of general programming syntax, and jumping between these essentials of programming and some advanced stuff like prototypes or closures makes it frustrating to read. Not to mention those "railroad diagrams" that were supposed to get the reader to understand the syntax, except that they don't.

The important thing is t
Jan 22, 2020 rated it it was amazing
JavaScript is too much fun. Reading the book was like watching a good mystery drama, full of unexpected twists and turns. And just when you think you've figured it out... oh no, another surprise is coming your way.
All joking aside, this book can teach you JavaScript essentials in a short and comprehensive manner.
Jan 04, 2018 rated it really liked it
Shelves: reviewed
I had wanted to read this book for some years, as I have written more JavaScript code in my life than I care to admit, and in that time have given much thought to the topic of good coding practice in this language. From time to time, I have also been asked for book recommendations from people wanting to learn JavaScript, and on hearsay, this is what I usually pointed them to.

Now I finally have read it for myself, and can vouch for its quality. It is targetted at experienced programmers who are n
Jan 28, 2012 rated it it was amazing
Recommended to Maggie by: the internet
This book is fantastic. There are at least 400 pages-worth of information crammed into those 176 pages. This book is definitely not written with the beginner programmer in mind. Even for an intermediate programmer such as myself, I often needed to read sentences three or four times in order to understand them. (Not because the writing was sloppy, but because of having to scour the depths of my brain to remember the meaning of terms like "lexical scope" and "prototypal inheritance").

I love this
Stephanie Sun
Mar 03, 2014 rated it really liked it
Shelves: ebook
This book is like the Invisible Cities or Molloy of programming books. It really pares stuff down in an eccentric way, so that on first glance the author comes across as a masochistic pedant (++ and -- are bad parts?!), but on second glance he is more like an advanced alien lifeform revealing new dimensions of consciousness to you.

JavaScript is a really weird language. Nobody told me that when I started to learn it. But it's expressive and adaptable, and when it works for something, it really, r
Jan 06, 2010 rated it it was amazing
This is a must-read book if you use Javascript seriously. When I put the book down, I'd learned and understood a few critical ideas about using Javascript that are changing the way I program. In particular, I found the section related to object creation (prototypal inheritance, implications for using the new keywords, etc.) I also greatly enjoyed the appendices -- I eat up lists like the awful and bad parts of Javascript, and the introduction to JSLint is going to be very fruitful. Not everythin ...more
Paul Ivanov
Mar 06, 2010 rated it really liked it
Shelves: non-fiction
This book caught my eye last week because of how comically skinny it is, given the title. Nevertheless, i just flipped through it as i'm about to code some javascript and i'm glad i did. It is dense in little gotchas that i've been tripping over.
Jun 16, 2016 rated it liked it
I wasn't overly impressed with this, A few good things but other books are better laid out and more user friendly
Divyanshu Maithani
Oct 28, 2019 rated it really liked it
A good book to understand how the language has evolved historically. Includes some good historic design patterns. Crockford also got things right on why non JavaScript developers hate the language:

JavaScript is most despised because it isn’t some other language. If you are good in some other language and you have to program in an environment that only supports JavaScript, then you are forced to use JavaScript, and that is annoying. Most people in that situation don’t even bother to learn JavaScr
Jan 24, 2020 rated it did not like it
Shelves: javascript
This book was clearly written by someone who wanted JavaScript to conform to their idea of how a programming language should operate, rather than someone who had taken the time to thoroughly learn the language and leverage its idiosyncrasies. Almost everything is a “mistake” or a “bad part,” but you can avoid these mistakes and bad parts if you use this language in this very strict sense. The book overall was very dogmatic and, quite honestly, annoying. Why write a book where you’ll spend more t ...more
Paul Keister
Mar 22, 2020 rated it it was amazing
I'm old enough to remember when JavaScript wasn't cool, and back then Crockford's pivotal work opened many peoples eyes to the potential of this language, which is now the most ubiquitous in the history of computer science. While the book is now out of date at the detail level, it's still feels like a fresh look, and I still found it inspiring. Crockford's cantankerous and opinionated narrative walks the edge of being a rant, but he is saved every time by the fact that his options, while they ma ...more
Alisher Abdurakhmanov
Nov 29, 2017 rated it liked it
Shelves: programming
Not bad actually, but that’s all. If you completed the series “You Don’t Know JS” then do not waste your time on this book, otherwise just start to read YDKS, of course! :)
Oleksandr Panforov
Jan 18, 2018 rated it it was amazing
Shelves: read-in-english
Simply amazing. Must read for folks, thinking of JS as of some crappy c++ spinoff for web.
Oct 01, 2018 rated it it was amazing
The first book that answered the questions and briefly explained what javascript really is, why do I need it, why it is special, and how to use these features.
Mykhailo Pohoda
Oct 22, 2019 rated it it was amazing
Author has great writing style.
It's interesting to read solutions and workarounds, and it's dreading to read about limitations of the language that caused those workarounds.
Apr 01, 2018 rated it really liked it
concise, witty, poetic. not entirely relevant today, but still insightful and fun to read.
Petar Ivanov
Jul 13, 2020 rated it really liked it
Shelves: computer-science
Great book about JavaScript programming language! I do recommend it to everyone who is working with JavaScript, want to better understand the language and/or just getting starting with it.
Sep 24, 2008 rated it really liked it
Recommends it for: intermediate-level JavaScript nerds looking to learn the "A" game
Recommended to Rob by: Jonathan Phillips
"There is danger and misery at the edges."

As the title implies, Douglas Crockford takes a subset of JavaScript, identifies it as "the good parts" and proceeds to explain why these parts are good (and should therefore be used). Crockford commends JavaScript for being a very expressive language but is also honest about the failings of individual parts (e.g., how arrays aren't really arrays but are in fact "array-like objects") and proposes some genuine solutions for them that do not involve abando
May 03, 2014 rated it really liked it
On December 8, 2014, President Barack Obama became the first president of the United States to write a computer program (at least while in office). It was part of a national campaign to get young people interested in software development. What language did the leader of the free world use to make history? JavaScript.

That marks just another milestone in the history of this tragic, wonderful, misunderstood language. Calling it a Shakespearean tragedy would be appropriate since Crockford's authorit
Wai Yip Tung
Jul 12, 2012 rated it liked it
JavaScript is a language of great contradiction. It is one of the most widely used programming language. But the language has also carries a lot of design problems, many have born from its original sponsors' Microsoft and Netscape's bitter rivalry.

Douglas Crockford has the idea to highlight the good part of the language but also to warn the unsuspecting programmers of its bad parts. He deliberately select a subset of the language and put it into a small book. While this is a commendable approach
« previous 1 3 4 5 6 7 8 9 next »
topics  posts  views  last activity   
Software Craftmanship 1 10 Aug 09, 2015 04:36PM  
Easy Ideas To Use Coupons And Save Money 1 1 Apr 26, 2015 04:35PM  
An Essential Overview Of Valuable Mushroom Growkit Plans 1 1 Apr 26, 2015 04:23PM  
Updated Answers On Handy Natural Skin Care Secrets 1 1 Apr 26, 2015 04:18PM  
Some Basic Insights On Rapid Plans For Magic Mushroom 1 1 Apr 26, 2015 04:11PM  
Quick Products In Champignons Magiques Information 1 1 Apr 26, 2015 04:06PM  
What's Needed For Indispensable Details For Poker 1 1 Apr 26, 2015 03:57PM  

Readers also enjoyed

  • Eloquent JavaScript: A Modern Introduction to Programming
  • JavaScript: The Definitive Guide
  • JavaScript Patterns
  • Design Patterns: Elements of Reusable Object-Oriented Software
  • The Pragmatic Programmer: From Journeyman to Master
  • Clean Code: A Handbook of Agile Software Craftsmanship
  • You Don't Know JS: this & Object Prototypes
  • Head First Design Patterns
  • The C Programming Language
  • Secrets of the JavaScript Ninja
  • Don't Make Me Think, Revisited: A Common Sense Approach to Web Usability
  • You Don't Know JS: Up & Going
  • Refactoring: Improving the Design of Existing Code
  • Code Complete
  • You Don't Know JS: Scope and Closures (You Don't Know JS, #2)
  • You Don't Know JS: Types & Grammar
  • You Don't Know JS: Async & Performance
  • The Mythical Man-Month: Essays on Software Engineering
See similar books…

Goodreads is hiring!

If you like books and love to build cool products, we may be looking for you.
Learn more »

Related Articles

If you haven't heard of record-smashing singer and songwriter Mariah Carey, is there any hope for you? Who else has sold more than 200 million...
58 likes · 23 comments
“Computer programs are the most complex things that humans make.” 14 likes
“We see a lot of feature-driven product design in which the cost of features is not properly accounted. Features can have a negative value to customers because they make the products more difficult to understand and use. We are finding that people like products that just work. It turns out that designs that just work are much harder to produce that designs that assemble long lists of features.” 9 likes
More quotes…