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 ·  7,517 ratings  ·  506 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 crea ...more
Kindle Edition, 1st Edition, 100 pages
Published December 17th 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…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.

This book is not yet featured on Listopia. Add this book to your favorite list »

Community Reviews

Showing 1-30
Average rating 4.23  · 
Rating details
 ·  7,517 ratings  ·  506 reviews

More filters
Sort order
A. Jesse
Oct 11, 2010 rated it really liked it  ·  review of another edition
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
Barry King
Jan 03, 2015 rated it it was amazing  ·  review of another edition
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
Lea Verou
Jan 07, 2010 rated it really liked it  ·  review of another edition
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
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 JavaScript’s od ...more
Feb 14, 2012 rated it liked it  ·  review of another edition
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
Dec 10, 2014 rated it did not like it  ·  review of another edition
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
Aug 18, 2012 rated it it was ok  ·  review of another edition
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 autho
Chase DuBois
Jun 19, 2012 rated it really liked it  ·  review of another edition
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 confounded by a number of its/>undefined
Jun 15, 2012 rated it really liked it  ·  review of another edition
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 fo
Ettore Pasquini
Jun 06, 2012 rated it it was amazing  ·  review of another edition
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 i
Ammar Lakis
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 im
Jan 04, 2018 rated it really liked it  ·  review of another edition
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 programme
Jan 28, 2012 rated it it was amazing  ·  review of another edition
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
a stephanie
Mar 03, 2014 rated it really liked it  ·  review of another edition
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  ·  review of another edition
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  ·  review of another edition
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.
I wasn't overly impressed with this, A few good things but other books are better laid out and more user friendly
Oleksandr Panforov
Simply amazing. Must read for folks, thinking of JS as of some crappy c++ spinoff for web.
Alisher Abdurakhmanov
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! :)
Oct 01, 2018 rated it it was amazing  ·  review of another edition
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.
Apr 01, 2018 rated it really liked it  ·  review of another edition
concise, witty, poetic. not entirely relevant today, but still insightful and fun to read.
Sep 24, 2008 rated it really liked it  ·  review of another edition
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 aban
May 03, 2014 rated it really liked it  ·  review of another edition
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 Crockfor
Wai Yip Tung
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 commenda
Matthew Campbell
This would be a 3.5 star is I could rate it that. I think my expectations were off going into this, as I expected an "in depth" look at language features for people who already knew JavaScript. Instead, I felt like it was also trying to teach the language to newcomers and spent a lot of time on bits and pieces that I would assume someone who works with the language would already know.

It moves incredibly quickly, which for the most part is a point in its favor. In several spots, thoug
Mar 14, 2013 rated it liked it  ·  review of another edition
Shelves: computer
I read JavaScript not because I plan on programming for the web, but because I need to figure out how to get my models and code onto computers in an organization with very restrictive policies on installing programs on computers, and the browser seems like one way to do it. That said, I'm not interested in things like DOM, but I want to be able to use Javascript (or at least the environment) well.

JTGP reads like a reference. Like O'reilly's Nutshell series, there are parts essay wher
Muhammad Haggag
Dec 25, 2012 rated it really liked it  ·  review of another edition
A concise, opinionated coverage of JavaScript for experienced developers. This is not a beginners book.

The book begins by describing the language Grammar using railroad diagrams. This is immensely helpful in forming a mental diff against whichever imperative C-based language you're coming from (C, C++, Java, etc.).

I found the coverage of object construction (new, constructor functions) confusing. I had to re-read it to understand what was going on. This is partly due to J
Ryan Gough
Jan 31, 2013 rated it really liked it  ·  review of another edition
Crockford writes persuasively about the elegant and powerful features that lurk within Javascipt that often get forgotten about due to the (admittedly numerous) failings in other parts of the language.

By restricting yourself to only the good parts, and taking some simple steps to mitigate the bad as far as possible, Crockford shows how it is possible to write Javascript programs that are readable and maintainable. Which might come as a surprise to many of the Javascript sceptics out
Kevin Garner
Mar 04, 2014 rated it really liked it  ·  review of another edition
"JavaScript: The Good Parts" is a somewhat terse read; fortunately, in that terseness, the book is incredibly efficient at defining a safer, smarter way to use the JavaScript programming language--without wasting the reader's time. On the other hand, since there are not a lot of examples or exercises included with the book, the topics are still somewhat nebulous until the reader goes and tries them out elsewhere. "JavaScript: The Good Parts" would best serve as a handy reference book while one i ...more
Jan 22, 2016 rated it really liked it  ·  review of another edition
Very short with good examples. Gives you an overview of the Javascript parts that are supposedly "good". Let's see whether that promise holds up in the real world, but I certainly have an appreciation for Javascript that I did not have before.

The only Javascript book I ever read and if it did it's job also hopefully the last one. (I will never read you, JavaScript: The Definitive Guide, you and your beastly 1000+ pages.)
« 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

  • JavaScript Patterns
  • High Performance JavaScript
  • JavaScript: The Definitive Guide
  • Secrets of the JavaScript Ninja
  • jQuery in Action
  • Effective JavaScript: 68 Specific Ways to Harness the Power of JavaScript
  • JavaScript Web Applications
  • Functional JavaScript: Introducing Functional Programming with Underscore.js
  • Eloquent Ruby
  • Even Faster Web Sites
  • jQuery: Novice to Ninja
  • RESTful Web Services
  • Programming Ruby: The Pragmatic Programmers' Guide
  • Seven Languages in Seven Weeks
  • Eloquent JavaScript: A Modern Introduction to Programming
  • jQuery Cookbook: Solutions & Examples for jQuery Developers
  • The RSpec Book
See similar books…

Goodreads is hiring!

If you like books and love to build cool products, we may be looking for you.
Learn more »
“Computer programs are the most complex things that humans make.” 12 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…