By David Flanagan
Fifth Edition
August 2006
Pages: 1018
ISBN 10: 0-596-10199-6 |
ISBN 13: 9780596101992
![]()
![]()
![]()
![]()
(Average of 9 Customer Reviews)
The indispensable reference for JavaScript programmers since 1996,
JavaScript: The Definitive Guide, 5th Edition is completely revised
and expanded to cover JavaScript as it is used in today's Web 2.0
applications.
Full Description
This Fifth Edition is completely revised and expanded to cover JavaScript as it is used in today's Web 2.0 applications. This book is both an example-driven programmer's guide and a keep-on-your-desk reference, with new chapters that explain everything you need to know to get the most out of JavaScript, including:
- Scripted HTTP and Ajax
- XML processing
- Client-side graphics using the canvas tag
- Namespaces in JavaScript--essential when writing complex programs
- Classes, closures, persistence, Flash, and JavaScript embedded in Java applications
Part I explains the core JavaScript language in detail. If you are new to JavaScript, it will teach you the language. If you are already a JavaScript programmer, Part I will sharpen your skills and deepen your understanding of the language.
Part II explains the scripting environment provided by web browsers, with a focus on DOM scripting with unobtrusive JavaScript. The broad and deep coverage of client-side JavaScript is illustrated with many sophisticated examples that demonstrate how to:
- Generate a table of contents for an HTML document
- Display DHTML animations
- Automate form validation
- Draw dynamic pie charts
- Make HTML elements draggable
- Define keyboard shortcuts for web applications
- Create Ajax-enabled tool tips
- Use XPath and XSLT on XML documents loaded with Ajax
- And much more
Part III is a complete reference for core JavaScript. It documents every class, object, constructor, method, function, property, and constant defined by JavaScript 1.5 and ECMAScript Version 3.
Part IV is a reference for client-side JavaScript, covering legacy web browser APIs, the standard Level 2 DOM API, and emerging standards such as the XMLHttpRequest object and the canvas tag.
More than 300,000 JavaScript programmers around the world have made this their indispensable reference book for building JavaScript applications.
"A must-have reference for expert JavaScript programmers...well-organized and detailed."
-- Brendan Eich, creator of JavaScript
Register your book | Submit Errata | Examples
Browse within this book
Cover | Table of Contents | Index | Sample Chapter | Colophon
Book details
Fifth Edition: August 2006
ISBN: 0-596-10199-6
Pages: 1018
Average Customer Reviews: ![]()
![]()
![]()
![]()
(Based on 9 Reviews)
Featured customer reviews
Great Book Everything I Needed Included, June 25 2008
Very cool book I learned alot from it and now almost everything it is to know about Javascript.
Not as Definitive as it could be, May 20 2008
I bought this book to replace the previous edition and get a little more up to speed on DOM and document scripting.
This book needs less talk and more definition. I was somewhat dissapointed to find that proprietary properties like innerHTML can be found but a simple method like setSelectionRange() isn't. I had to discover it via google and not my book :(
The upside is the layout. There's a lot to cover with Javascript and this book at least makes an attempt to do so. The client and Core objects/functions are separated nicely for reference. But it needs to be more complete.
Re: Disappointing, February 20 2008
I'm not sure which book on JavaScript he read, but I found this book incredibly useful and overall pretty good in relationship to other books on the subject matter.
Disappointing, July 17 2007
I can see this book is full of useful information but ultimately fails to provide a coherent structure, which is what I expect from a reference manual. The information and the relationship of that information is not well organised or properly indicated. DOM support or non standard deviations are not adequately described and the index is unhelpful.
It's a frustrating book to use and I find myself tossing it and using Google instead. The layout and structure needs a complete overhaul to get some of that bloat under control and improve the navigation.
Also, what happened to the onscroll event?
Updated for the latest browsers and technology, February 25 2007
This 5th edition contains all the things you grew to love about the previous editions, updated for the latest browsers. As an addition to the previous versions, I found this edition contained better information on CSS and JavaScript, XML and JavaScript, and of course has several excellent sections on HTTP scripting (AJAX), as well as JavaScript and graphics.
Like its predecessor, this book contains the excellent introduction to the core JavaScript library, which hasn’t changed much from previous editions (at least to my eye). The client-side JavaScript section is where I noticed the most changes. This updated section contains a great refresher of CSS, identifies “quirks mode” in IE and other browsers, and gives some excellent examples of modifying CSS via JavaScript. The next section that appears new to me is the Scripting HTTP section, which is an excellent introduction to the world of AJAX. In this section, the author describes how to perform both synchronous and asynchronous requests via JavaScript, how to handle the results, and differences between different browsers. I also came across several (new to me) sections on manipulating graphics with JavaScript. In these sections, the author discusses creating graphics with CSS, SVG, and VML. Again, the examples are clear and easy to follow.
Again, like the previous editions, the book also contains a Core JavaScript Reference as well as a Client Side JavaScript Reference. These sections identify each method or property of each object, provide a description, and illustrate usage with a brief example. These sections have all been updated in this version to show what JavaScript/ECMAScript version the method or property first appeared, or whether it is a feature supported only by a subset of browsers. This is an invaluable reference when creating cross-browser JavaScript.
All in all, I was very pleased with the updates to this edition. I think especially if you are looking for a good AJAX reference, the updates to this book make it well worth your time.
Most comprehensive coverage of Javascript, October 31 2006
This book provides a very comprehensive coverage of the Javascript language and of the HTML Document Object Model (DOM). The chapters provide tutotial introduction and the appendices provide detailed reference for the built in classes for all HTML constructs within the DOM.
The newer sections on AJAX related features are somewhat weak.
I use this book daily in building web sites.
needs a real revision, October 23 2006
I bought this book as an experienced web developer who is transitioning to object-oriented Javascript. I'm already very knowledgeable about the DOM, and adhere religiously to the principles of unobtrusive Javascript. But I'm confounded by the object-oriented paradigm that "Ajax" is making more relevant every day.
My first impression was very good, the core Javascript language is covered very well, in a readable and easily-understood manner.
When I got to the 'client-side Javascript' section, it became abundantly clear that this is a fifth edition of a 10 year old book. Numerous paragraphs and subsections on obsolete code and practices are negated parenthetically, as if the author was afraid to gut too much of his text. In many places, contradictory statements are made about handling the DOM, event handlers, or window management. There were times where example code was using old techniques, while the commentary text was praising the new techniques.
Some examples:
- More than a page is devoted to changing the status bar text, only to say "modern browsers have disabled the ability to set the status property."
- Many of the examples use techniques such as inline Javascript, javascript: URLs, or even onx HTML attributes for event handling.
- Use of the document.elements array abounds.
Overall, I though the book was well written and readable. The new material on DOM Level 2, "Ajax," E4X, etc was great, and the reference section is helpful as well. But the browser-specific section is suffering from the baggage of previous editions, which may be harmful to those beginners who are unaware of modern techniques.
Not ready for release, October 23 2006
This text is shoddy, in comparison to other O'Reilly titles and earlier editions of this title. So much so that it seems rushed to print.
The description of the Microsoft IE event handling, in chapter 17, is simply wrong. Not typos, just wrong. In my version IE version 6, event handlers registered with addEvent *are* called with the triggering event as an argument, contrary to the text and examples. Specifically, the IE-specific portion of the
"portableEventHandler" code at the bottom of page 411 is never called because "e" is never empty. I wasted far more time than I should have because I relied on this behavior in writing my own event handling code.
Similarly, the "Form Verification Example", on pp 451-455, doesn't work in an xhtml strict environment. In the overly-brief section on the doctype tag (page 366), no mention is made of the impact on javascript of specifying "strict. The various html attributes ("required", "pattern", etc) will properly cause a strict w3c validator to declare a violation.
Although I submitted errata reports to this website, I've received no response and no indication that they were ever received -- never mind acted on.
This is an expensive ($49.99) paperback, and I expect more than I got. Stick with the 4th edition.
Minor Typo, October 13 2006
Submitted by Anonymous Reader [Respond | View]
What is the typo mentioned in this review by Gary Randolph and where is it located?
Thanks
Great book - frustrating programming environment., September 09 2006
I began programming in C++ when it was still called CFront and I have programmed in Java, so the general "Core Javascript" chapters went quickly for me.
Part II began teaching me new things since my web development prior to this was primarily XHTML/CSS. David does a good job explaining many of the very frustrating cross browser issues that come with this programming environment. I hate that these issues exist, but I won't shoot the messenger, who remains a gentleman while saying time and again, "With the notable exception of IE." I found just one minor typo, but it was within a code fragment, which is a pet peave of mine.
David does a good job of commenting his code fragments so they are easy to follow.
The last two sections are "Core Javascript" and "Client-side Javascript" references. Many times, an author will muck up the format of a reference; rendering it useless. David and O'Reilly keep the references well organized so that this is a book I now keep close by.
The O'Reilly site has a link to get the book examples (all bundled together), but it was down when I visited it, so I went to David's site and downloaded the examples I most wanted. Hopefully that's a temporary glitch.
Whenever I have needed to find something via the index, I have been successful. Given my high ranking, you already know I am glad I bought this book, so I'll stop here.
Media reviews
"Flanagan writes well and communicates clearly. He describes enough of the history of JavaScript and browsers to help readers understand the issues involved in using various parts of the language. He assumes readers have only a little knowledge of programming, so it is possible to learn from this book without knowing another programming language...All in all, the book is quite an achievement. This volume will be well used in my library, at least until the next edition comes out. Highly recommended."
-- Robert Boardman, Kickstart News
"This book truly is the grand daddy of them all! The depth of Javascript resources is immense. I cannot even begin to think of the number of times this book has saved my bacon when working on a particularly sticky issue...Highly recommended!"
-- Donald Bickel, Amazon.com
"This is all well presented, with pertinent example code. If you want to start using Javascript or need to ramp up your usage, this is the book to have."
-- Tony Lawrence, A.P. Lawrence.com
"If there is an essential JavaScript book for developers, this would have to be it...When you see a good thing, you can't help but want more of it."
-- Yow-Hann Lee, Yow-Hann's Book Reviews
"...if you're a new developer trying to get a grasp on serious JavaScript or otherwise looking for a quality JavaScript book, you can't go wrong with this book."
-- Eric Wuehler, Amazon.com
"This is the 5th edition of this almost thousand page book (992), and has been pretty much the gold standard for JavaScript reference books. I have the 4th edition that came out a few years ago and it was worth upgrading to this new 5th edition...If you do any real JavaScript programming or development (or will be doing some in the future), this definitely has to be in your bookshelf. "
-- Frank Stepanski, Amazon.com
"I have a different JavaScript reference manual at work, but it's never been one that I've relished having to use. This volume is slated to take over that shelf space next week... Great job."
-- Thomas Duff, Duffbert's Random Musings
"JavaScript The Definitive Guide 5th edition upholds its predecessors' status as the only JavaScript reference you need to tackle the nuisances of JavaScript day in and day out."
-- George, JavaScriptKit.com
"If you only want to buy one book on Javascript then this is the one to get."
-- Stephen Chapman, JavaScript.About.com
"...completely revised and expanded to cover the Web 2.0 applications, yet retains the same attention to real-life problem solving which made the preceding editions so popular...An outstanding reference."
-- Diane Donovan, California Bookwatch
"In order to fit all the material in even as large a book as this, the reference entries are terse. For programmers--the principal audience--who know JavaScript, but who need a reference, that terseness is an advantage: information is specific, easy to find, and is not burdened with superfluous verbiage. In the explanatory sections the language is clear and the style is concise, but eminently readable. "
-- Major Keary, Book Notes
"JavaScript, The Definitive Guide is a classica dog-eared, highlighted pillar of every Web development library."
-- Will Wagers, CSharp-Online.NET
"Two books live on my desk when I'm working on Web pages with client-side scripting: David Flanagan's JavaScript: The Definitive Guide, 5th Edition and Danny Goodman's Dynamic HTML: The Definitive Reference, 3rd Edition. They're both huge books, and their content overlaps substantially, but they both keep earning their spots. I reach for Flanagan if the question in my mind is primarily about some aspect of JavaScript, and for Goodman if the question is primarily about some aspect of HTML, XHTML, CSS or the Document Object Model...It's the reference sections of the two books that I return to over and over. "
-- Martin Heller, Strategic Developer, InfoWorld






