- Save an extra $1.20 at checkout. Here's how (restrictions apply)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Use the Amazon App to scan ISBNs and compare prices.
See the Best Books of 2017 So Far
Looking for something great to read? Browse our editors' picks for the best books of the year so far in fiction, nonfiction, mysteries, children's books, and much more.
Frequently bought together
Customers who bought this item also bought
Special offers and product promotions
From the Publisher
From the Preface
About the Author
If you are a seller for this product, would you like to suggest updates through seller support?
Top customer reviews
Do you find the syntax to be non-intuitive and frustrating?
Do you know the difference between using a function as an object vs using an object literal?
Do you know how using object literals can simplify your code and create something similar to namespaces?
Do you know how to augment the type system -- for example, if wanted all strings to have a trim() method?
Do you know why the "new" statement is so dangerous? Do you know an alternative that eliminates the use of "new" entirely?
These are some of the topics that the book touches upon.
You might ask "Isn't this stuff already covered in other books that I have?" The answer is no. For one, most other books use a psuedo-classical coding style (see below) to explain objects that is a source of confusion.
There are a series of Yahoo! videos by Crockford that mirror the material in this book and can be found as podcasts under YUI Theater. They contain nearly all of the material in the book and probably a little more. Those videos are:
- Douglas Crockford/An Inconvenient API: The Theory of the DOM (3 parts)
I also like the explanations: how and why the good parts work. But this is where I begin to have reservations about the book. Some of the explanations are incomprehensible because of poor editing. How is it possible that a collection of technology pace-setters (Crockford, O'Reilly, Amazon) can leave numerous "confirmed serious technical mistakes" in their work uncorrected for at least 4 years (I bought it in 2012)?
O'Reilly's errata website for this book lists 157 'confirmed' errata, of which 9 are classified as "Serious Technical Mistake." There are also 22 "unconfirmed errata." Most of the confirmed errata were marked as fixed shortly after publication, but at least one of them ("beget") is still in the Kindle edition. O'Reilly helpfully provides downloadable copies of the example code online, but the current version still contains errors that prevent the code from running (mode/node).
I keep going back and re-reading this book, so looking past all my wasted time trying to make sense of the errors, I would give a correctly edited edition of this book five stars for the educational insights sprinkled through it. Or maybe not any more. The state of the art has changed. For example, as many one-star reviewers point out, the whole section on Object.create is outdated. This book needs a rewrite.
This book is NOT for beginners to programming.
This book is very opinionated on what the core language constructs are and how to use them and avoid the other parts.
Also, you can find Crockford on youtube quite easily. I went through his excellent series here: https://www.youtube.com/watch?v=JxAXlJEmNMg&list=PL7664379246A246CB
Update: Note: I have purchased 3 O'Reilly books in the last couple of months. Each one of them has literally fallen apart. I will be reading a page and the page will come out of the binding. I am fairly gentle on the books so I think there is a binding problem at O'Reilly.