Goodreads helps you keep track of books you want to read.
Start by marking “Java Script: The Good Parts” as Want to Read:
Blank 133x176
Java Script: The Good ...
 
by
Douglas Crockford
Rate this book
Clear rating
Open Preview

Java Script: The Good Parts

4.23  ·  Rating Details ·  5,655 Ratings  ·  416 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
153 pages
Published 2009 by Southeast University 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 Java Script, please sign up.

Popular Answered Questions

Zachary Depends.

Are you new to programming? Then no, this is not for novices--the author says so himself.

Do you want to learn "idiomatic JavaScript"? Then no,…more
Depends.

Are you new to programming? Then no, this is not for novices--the author says so himself.

Do you want to learn "idiomatic JavaScript"? Then no, I've never encountered many of these patterns in the wild. I'd recommend instead to use Exercism.io.

Are you familiar with programming, but want to see good JavaScript usage? Then yes, this book will show you that JavaScript might be lightweight, but it supports patterns that support heavyweight applications.

Note: Because this book was written before ES5, it is a bit dated, but not significantly so. For example, the author suggests adding "new" methods to Array.prototype that ES5 added.(less)
This book is not yet featured on Listopia. Add this book to your favorite list »

Community Reviews

(showing 1-30 of 3,000)
filter  |  sort: default (?)  |  Rating Details
A. Jesse
Oct 11, 2010 A. Jesse 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 is, you sho
...more
Lea Verou
Jan 07, 2010 Lea Verou 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 J ...more
Barry King
Jan 06, 2015 Barry King 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 has lived wi
...more
David
Feb 15, 2012 David rated it liked it  ·  review of another edition
Shelves: read-2012
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
...more
gargamelscat
Oct 08, 2012 gargamelscat 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 author's admonition at the be
...more
Alo
Dec 10, 2014 Alo 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 quite know w
...more
Chase DuBois
Aug 02, 2012 Chase DuBois 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 confound
...more
Brian
Jun 20, 2012 Brian 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 for someone familiar with
...more
Ettore Pasquini
May 22, 2013 Ettore Pasquini 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 in other lang
...more
Brittany
I wasn't overly impressed with this, A few good things but other books are better laid out and more user friendly
Stephanie Sun
Mar 03, 2014 Stephanie Sun 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
...more
Paul Ivanov
Mar 06, 2010 Paul Ivanov 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.
Austin
Feb 14, 2015 Austin 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 Crockford's authorit
...more
Muhammad Haggag
Dec 25, 2012 Muhammad Haggag 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 JavaScript's pandering to
...more
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 commendable approach
...more
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, though, I wish th
...more
Rob
Apr 04, 2010 Rob 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 abando
...more
Ryan Gough
Feb 02, 2013 Ryan Gough 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 there, and I
...more
Alex
Jan 06, 2010 Alex 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
Nivesh
Feb 01, 2016 Nivesh rated it it was amazing  ·  review of another edition
Kind of like a sacred book for JavaScript lovers. The more you read the more interesting it gets every time.
Stijn
Jul 19, 2016 Stijn 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.)
Zachary
Q: Is this the best book to start learning JavaScript?

A: Depends

Are you new to programming? Then no, this is not for novices--the author says so himself.

Do you want to learn "idiomatic JavaScript"? Then no, I've never encountered many of these patterns in the wild. I'd recommend instead to use Exercism.io.

Are you familiar with programming, but want to see good JavaScript usage? Then yes, this book will show you that JavaScript might be lightweight, but it supports patterns that support heavyweig
...more
Top
Jan 19, 2016 Top rated it really liked it  ·  review of another edition
If you were working with jQuery and JavaScript you eventually learned about Douglas Crockford and his book "JavaScript: The Good Parts".

As one of the driving forces behind JavaScript, with this book he really gave a good explanation of JavaScript's components, although readers must be warned that the various sections should be read more than once to be able to apply and understand the concepts explained before getting some of the more advanced ideas.

The main reason I read this book was need to h
...more
Kevin Garner
Mar 04, 2014 Kevin Garner 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
Anshul Thakur
Feb 28, 2014 Anshul Thakur rated it really liked it  ·  review of another edition
JavaScript is a must know language for anyone who has to do anything with development on the web. If you are a hardcore fanatic type, who wants to adhere to a single language like PHP or JSP or Python (or any of them) for the back as well as frontend development, chances are you won’t be getting much far in the design side, and the developmental side too will soon saturate off at what it has to offer. JavaScript has been the de facto language of creating beautiful content on websites since a ver ...more
Bryan Higgs
I read this in eBook format.

The author of this book is a well-known JavaScript expert and critic. He knows what he's talking about when it comes to JavaScript. For those who don't know, JavaScript is a programming language that is built into every (modern) Web browser. It is often confused with Java, because when it first came out (on the now-defunct Netscape Navigator browser), Java was all the rage, and the inventor of JavaScript (called LiveScript before then) was told to reinvent the languag
...more
Carlos
This is a book that any JavaScript expert will enjoy reading in his leisure time, maybe on the beach. It is neither for beginners nor for people (like me) that already have grasped the basics and is looking for more.
It is not for beginners because if some basic concepts are explained thoroughly, there are also other concepts the author does not mention at all, just because he doesn't feel like it. It is not for people with my level of knowledge because many of his advices are things that a stud
...more
Zoffix Znet
Great book for seasoned programmers who want to learn JavaScript. It goes through all the constructs of the language, referencing other well-used languages and programming idioms for explanations. The author is very opinionated, which at times is funny, but at others it just side-tracks you from the discussion. The "Bad Parts" Appendix is included in the book.

I felt the pacing of the book was a bit odd. You go from author's rants about the bad parts, then the awfully long and convoluted Grammar
...more
Thomas
Jan 12, 2010 Thomas rated it really liked it  ·  review of another edition
Shelves: making-things
This along with JavaScript: The Definitive Guide are the two must read books for any JS programmers out there. Crockford lays out in very clear terms what's good (and bad) about JS in it's current form. His guidelines for how to use it effectively seem very solid based on my experiences.

It helps that you can easily read through the majority of this book in a couple hours. But it's also one to keep around and flip through every so often when you need a refresher.
« previous 1 3 4 5 6 7 8 9 99 100 next »
  • JavaScript Patterns
  • JavaScript: The Definitive Guide
  • High Performance JavaScript
  • Secrets of the JavaScript Ninja
  • Eloquent JavaScript: A Modern Introduction to Programming
  • Effective JavaScript: 68 Specific Ways to Harness the Power of JavaScript
  • Pro Git
  • JavaScript Web Applications
  • High Performance Web Sites
  • Functional JavaScript: Introducing Functional Programming with Underscore.js
  • Seven Languages in Seven Weeks
  • jQuery in Action
  • Eloquent Ruby
  • Programming Ruby: The Pragmatic Programmers' Guide
  • Programming Pearls
  • Real World Haskell: Code You Can Believe In
  • Async JavaScript
  • jQuery Cookbook: Solutions & Examples for jQuery Developers

Goodreads is hiring!

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

Share This Book



“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.” 8 likes
“Computer programs are the most complex things that humans make.” 8 likes
More quotes…