JavaScript: The Definitive Guide (Definitive Guides) and over one million other books are available for Amazon Kindle. Learn more



or
Sign in to turn on 1-Click ordering
Sell Us Your Item
For a $13.12 Gift Card
Trade in
More Buying Choices
Have one to sell? Sell yours here
Start reading JavaScript: The Definitive Guide (Definitive Guides) on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.
Sorry, this item is not available in
Image not available for
Color:
Image not available

To view this video download Flash Player

 

JavaScript: The Definitive Guide: Activate Your Web Pages (Definitive Guides) [Paperback]

David Flanagan
4.4 out of 5 stars  See all reviews (58 customer reviews)

List Price: $49.99
Price: $28.30 & FREE Shipping. Details
You Save: $21.69 (43%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.
Want it Friday, May 24? Choose One-Day Shipping at checkout. Details

Formats

Amazon Price New from Used from
Kindle Edition $24.79  
Paperback $28.30  
Shop the new tech.book(store)
New! Introducing the tech.book(store), a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now

Book Description

May 10, 2011 Definitive Guides

Since 1996, JavaScript: The Definitive Guide has been the bible for JavaScript programmers—a programmer's guide and comprehensive reference to the core language and to the client-side JavaScript APIs defined by web browsers.

The 6th edition covers HTML5 and ECMAScript 5. Many chapters have been completely rewritten to bring them in line with today's best web development practices. New chapters in this edition document jQuery and server side JavaScript. It's recommended for experienced programmers who want to learn the programming language of the Web, and for current JavaScript programmers who want to master it.

"A must-have reference for expert JavaScript programmers...well-organized and detailed."

--Brendan Eich, creator of JavaScript, CTO of Mozilla

"I made a career of what I learned from JavaScript: The Definitive Guide.”

-- Andrew Hedges, Tapulous


Frequently Bought Together

JavaScript: The Definitive Guide: Activate Your Web Pages (Definitive Guides) + JavaScript: The Good Parts + JavaScript Patterns
Price for all three: $65.02

Buy the selected items together
  • JavaScript: The Good Parts $16.73
  • JavaScript Patterns $19.99


Editorial Reviews

From the Author

My 10 Favorite Examples from this Book
The 6th edition of JavaScript: The Definitive Guide includes 125 examples that you can view and download from from examples.oreilly.com/9780596805531/ or from github.com/davidflanagan/javascript6_examples
These are ten of my favorites from the book. Note that many of these use new features of ES5 or of HTML5, and will only work in the newest browsers:
1) Example 1-1 is is an extended example in the first chapter of the book, intended to show readers a simple but non-trivial example of JavaScript. This is the loan calculator example from the last edition, but made much more interesting with the addition of client-side graphics, localStorage, and Ajax.
2) Example 9-7 emulates Java-style enumerated types in JavaScript. It demonstrates that JavaScript's prototype-based inheritance is so flexible that factory methods can be normal object factories or even class factories. That example is a little clearer if you look at the code in Example 9-8.
3) Example 9-16 defines a class hierarchy of abstract and concrete Set classes. This one is a favorite because it involves data types and API design. Chapter 9 includes a number of other Set examples, too.
4) Example 9-23 demonstrates the ES5 Object.defineProperty() method and defines a convenient way to inspect and modify the attributes of the properties of an object. It may not be practical, but I think it is a beautiful hack.
5) Example 15-10 is a simple stream-like API wrapped around the innerHTML property of an element. When you're generating text (a table, for example) for display it is sometimes easier to pass each chunk that you compute to a write() method than it is to concatenate it all together and set it on innerHTML.
6) Example 21-03 is an analog clock implemented as an SVG graphic with scriptable hands. I love client-side graphics, and this is a favorite of mine because making the hands rotate is so simple with SVG transforms.
7) Example 21-06 draws a fractal Koch snowflake using the <canvas> tag. I like it because it draws the same line over and over again, but uses transformations to make the line appear at different locations, orientations and sizes.
8) Example 21-13 is another graphical example: it draws sparklines (edwardtufte.com/bboard/q-and-a-fetch-msg?msg_id=0001OR). This one is a favorite just because sparklines are so cool.
9) Example 22-1 uses the HTML5 geolocation API to find out where you are then uses the Google Maps API to obtain a static map of your location. I like it because geolocation (via wifi networks) is just pure magic!
10) Example 22-15 is a long example that demonstrates the IndexedDB API. I like it because the idea of a client-side database in a web browser is crazy and cool. This one is really cutting-edge, but if you're running Firefox 4, you can try it out here: davidflanagan.com/demos/zipcodes.html

From the Back Cover

Since 1996, JavaScript: The Definitive Guide has been the bible for JavaScript programmers. With more than 500,000 copies in print, web developers are still raving about it:

  • "A must-have reference for expert JavaScript programmers...well-organized and detailed" -- Brendan Eich, creator of JavaScript, CTO of Mozilla
  • "I made a career of what I learned from JavaScript:The Definitive Guide"--Andrew Hedges, Tapulous
  • "The Definitive Guide taught me JavaScript"--Tom Robinson, cofounder of 280 North, cocreator of Cappuccino
  • "I know which parts of JavaScript matter, based on how crinkled the spine of my copy of The Definitive Guide is in that section"--J. Chris Anderson, cofounder of CoucheBase, Apache CouchDB committer, and author of CouchDB:The Definitive Guide
  • "...an indispensable reference for all JavaScript developers. If there's something I need to know about JavaScript, I trust The Definitive Guide will have the right answer for me. It's that good."--Rey Bango, Microsoft Client-Web Community Program Manager and jQuery Team member.

Product Details

  • Paperback: 1100 pages
  • Publisher: O'Reilly Media; 6th edition (May 10, 2011)
  • Language: English
  • ISBN-10: 0596805527
  • ISBN-13: 978-0596805524
  • Product Dimensions: 7 x 2.2 x 9.2 inches
  • Shipping Weight: 3.9 pounds (View shipping rates and policies)
  • Average Customer Review: 4.4 out of 5 stars  See all reviews (58 customer reviews)
  • Amazon Best Sellers Rank: #4,936 in Books (See Top 100 in Books)

More About the Author

David Flanagan is a computer programmer who has spent much of the last 20 years writing books about programming languages. He now works at Mozilla. David lives with his wife and children in the Pacific Northwest, between the cities of Seattle and Vancouver.

Customer Reviews

The reference is very handy, I already have used it a lot of times. Jeroen Oliemans  |  8 reviewers made a similar statement
If you are looking for something JavaScript, it's in this book. boston student  |  8 reviewers made a similar statement
The book is very well written and makes for a really good read as well as a great reference. T. Anderson  |  10 reviewers made a similar statement
Most Helpful Customer Reviews
262 of 281 people found the following review helpful
3.0 out of 5 stars Could be better May 6, 2011
Format:Paperback
Readers should note that most of the reviews of this book refer to older editions which are -- due to the rapid evolution of javascript -- completely different books. I've spent a considerable amount of time the last few months reading the 6th edition of this book and have a number of complaints. But first, the kudos: this book is more comprehensive than any other javascript reference.

Complaints:
- the text is frequently non-linear in the sense that author will talk about undefined feature X, stating that feature X will be explained a couple of chapters later. Sometimes this is a good way to gradually introduce concepts, but it's used too much here. Some critics of this book have suggested you need to know javascript before reading this book, this might be why.

- Almost every concept is followed with the caveat "but this feature doesn't work in Internet Explorer prior to version Z. For that you have to use this entirely different function f". This makes the text unnecessarily confusing. How about talking about *standard* ECMAscript and relegating the caveats to end of chapter notes, perhaps adding a superscript to alert the reader about version incompatibilities?

- The examples are poor -- most show how to re-implement javascript 5 functions in javascript 3, or how to get a standard function to work in Internet Explorer 8. Who cares? This is why we have jQuery and Dojo -- in order not to worry about stuff like this. A few examples like this would provide welcome insight into dealing with compatibility issues, but in this case my eyes started to glaze over after a few hundred pages.

Case study: Chapter 17, "Handling Events". After reading much of this chapter I realized I didn't know anything about how to use events in actual, practical code. I went back to re-read the chapter, which starts on p. 445. The first example "snippet" doesn't occur until p. 457 and the first real example is on p. 466, demonstrating a "whenReady" function which shows you how "you can improve the startup time of your web applications if you trigger your scripts on events other than 'load'." Somewhat interesting, but is this really the best first example on event processing? The next example illustrates dragging an object, and is already quite complex and hard to follow.

The beginning of Ch. 17 tells us "An event object is an object that is associated with a particular event and contains details
about that event. Event objects are passed as an argument to the event handler function (except in IE8 and before where they are sometimes only available through the global variable event). All event objects have a type property that specifies the event type and
a target property that specifies the event target. (In IE8 and before, use srcElement instead of target.) Each event type defines a set of properties for its associated event." OK, how about an EXAMPLE illustrating how this works in real code? It's nearly impossible to get much out of this comment (and certainly impossible to retain anything) without an example. Only someone who already knows this stuff will follow that effectively, and if you already know the material, why read this chapter?

Additionally, some standard methods appear not to be documented in the client-side reference. Unfortunately I can't recall which ones at the moment; just remember looking for them and not finding them.

The "camel" book "Programming Perl" by Wall, Christiansen, and Orwant continues to be the gold standard for programming books by almost any measure, despite the fact that the current edition (3rd) is now terribly out of date. This book is readable, starts out with a good overview and then gradually dips the reader into the complexities of the language, included good examples, and frankly is an extremely enjoyable read. By comparison, this book meets none of these metrics. As a side note, O'Reilly (also the publisher of Programming Perl) used to be the dominant technical book publisher by huge margins, but in the past few years has begun to fall behind newer, more nimble competitors like Packt and Manning, who offer steep discounts on ebook editions and who appear to be taking greater care to maintain content quality. The affect is that at one time I would have simply assumed that the O'Reilly title was the highest quality text on any particular issue and now I'm finding this is not the case more often than not.

I must also add that I'm a fairly experienced programmer with some prior javascript experience; hence presumably a member of the target audience for this book. Whatever it's shortcomings and merits, and as other reviewers have pointed out, this book is COMPLETELY inappropriate for novice programmers and beginners. Stay far away, newbies, lest you burn in the pit of doom.
Was this review helpful to you?
41 of 43 people found the following review helpful
5.0 out of 5 stars Provides a deep dive into JavaScript development May 23, 2011
Format:Paperback
JavaScript: The Definitive Guide is not just a complete reference of the language, like O'Reilly's other 'thick books,' but also provides a deep dive into JavaScript development. However, if you're just starting out and will be using one of the various libraries (like jQuery), this book may not (yet) be for you.

First, the sixth edition is the first I've read, so I can't speak to any changes. Instead, my review is focused on the book as a first-timer reader to the 'series.'

JavaScript: The Definitive Guide is broken up into four parts; Core JavaScript, Client-Side JavaScript, the Core JavaScript Reference, and the Client-Side Reference. If you've ever picked up one of O'Reilly's other reference books, like Dynamic HTML: The Definitive Reference, you know about what to expect from those last two parts - a deep reference to the language.

The first two parts, however, are a 'deep dive' into the actual language itself. Unlike a mere reference book, JavaScript: The Definitive Guide actually teaches you how to develop in JavaScript, starting at the core fundamentals, and working your way up to more advanced topics.

Part of the 'deep dive' aspect also includes following best practices, making numerous references to Douglas Crockford's JavaScript: The Good Parts throughout the first part of the book, which is about 30% of the book. Alone, the first part of the book provides an excellent, near-complete, tutorial on the language.

Historical information is also included, which I found to be very interesting when it came up, as well as implementation-specific functionality, that has limited use at this time (and as such, I personally found it distracting, and began skimming over later instances, but it's still nice that it's provided).

The second part focuses on the Web aspects, which is quite honestly where most people will be making use of JavaScript. This part covers about what you'd expect, as well as jQuery, client-side storage, and HTML5 functionality.

The jQuery information is around 60 pages of content, covers version 1.4, and also includes a bit about jQueryUI (a very little bit). It's quite refreshing to see jQuery included in the book, but as noted initially, if you're looking at focusing just on using a library, it may be better to get a resource focused on just that.

The second part is approximately 40% of the book.

The third and fourth parts are similar to O'Reilly's other reference books, and are therefore fairly detailed, with examples included. Depending upon your preference, you may find the reference valuable, or prefer searching online. The examples included give the book a slight advantage over the average Web site. Honestly, I generally prefer using online resources, so I don't see myself consulting these later parts very often, if at all.

Finally we come to the actual book itself. I received an electronic copy of the book, through the O'Reilly Blogger Review Program, so I can't speak to the quality of a physical copy. However, in the past I have generally found O'Reilly books to be well made, with bindings that last.

And now comes the rating.

After the first part of this book I was impressed by JavaScript: The Definitive Guide, and could easily have stopped there and been happy. The jQuery inclusion was a nice touch, which may be sufficient to push people who weren't thinking about using a library in their development to doing so, and may actually provide enough information for someone who wants to start learning JavaScript via jQuery. It is, in short, a true guide to JavaScript, and not just a reference book.

For these reasons, I must give JavaScript: The Definitive Guide, 5 of 5 stars.
Comment | 
Was this review helpful to you?
15 of 16 people found the following review helpful
4.0 out of 5 stars Great resource for Javascript development May 15, 2011
Format:Paperback
This book is called 'the definitive guide' for a reason: it is by far the most complete book on Javascript that you can buy. Every subject, from syntax to popular libraries is covered. The 6th edition is completely updated to reflect the latest standard, ECMAscript 5. The newest features such as localstorage and geolocation are explained in this new edition. The book follows a clear outline. It starts by explaining the language and it's syntax, followed by it's features. Next is the usage of the language, both as a client-side language and as a server-side language. The book also covers the most popular Javascript library: jQuery.

I found the book, although it is written as a reference, easy and entertaining to read. The book is a great resource to use while developing Javascript, because every little detail is covered. A good indication of its quality is that the book survived five editions and is still going strong! What I did miss is some guidance around real world Javascript development and tooling. The book does not explain anything around unit testing, development environments and other useful tooling. That would be a welcome addition for the 7th edition!
Comment | 
Was this review helpful to you?
Most Recent Customer Reviews
5.0 out of 5 stars Excellent reference
Provides a thorough account of the language, neighboring technology and has a great reference section. Read more
Published 20 days ago by Shri
5.0 out of 5 stars Great book
This book is from 2011 year, but is actual for current technologies in 2013. Great description of language itself and current frontend technologies.
Published 1 month ago by Karol Sikora
3.0 out of 5 stars Good reference book, but not a great book to learn Javascript
The book is very through, making it a terrific reference book.

Unfortunately, the way the book is written, there is seemingly no target audience in mind. Read more
Published 1 month ago by Jason
5.0 out of 5 stars It is everything JavaScript
For me, this is the end all for JavaScript books. If you are looking for something JavaScript, it's in this book.
Published 1 month ago by boston student
5.0 out of 5 stars Comprehensive book
Great book to get into the details of JavaScript world. It covers all aspects of language I can think of. Definitely I will get back to it very often in the future. Read more
Published 2 months ago by GZiolo
5.0 out of 5 stars A must book for any serious JavaScript development
I mean, as the book says, it's a definitive guide. DEFINITELY! It covers the subject comprehensively with detailed examples. What more do you want...
Published 3 months ago by Kevork Yerevanian
5.0 out of 5 stars Exactly What I Needed
The second part of this book, Client-Side Javascript, helped answer many mysteries about why web pages behave differently in one browser than another and helped me to fix several... Read more
Published 3 months ago by A. Stebbins
5.0 out of 5 stars A new version....
Updating my third edition with the newest edition of this seminal classic reference on the Javascript language. Read more
Published 4 months ago by E. Miller
5.0 out of 5 stars The best of JavaScript reference
The best of JavaScript reference. Has a lot of useful code snippets ready for implementation. The explanations are clear and easy to read.
Published 4 months ago by Tatiana Minina
5.0 out of 5 stars Tells Me What I Need to Know
JavaScript is a tough language to learn. This book helps to explain difficult concepts but the subject still requires hard study to learn.
Published 4 months ago by Coffeeguy
Search Customer Reviews
Only search this product's reviews

What Other Items Do Customers Buy After Viewing This Item?


Customer Questions & Answers
Please make sure that your post is a question about the product. Edit your question or post anyway.



So You'd Like to...

Create a guide


Look for Similar Items by Category