Buy Used
CDN$ 1.88
+ CDN$ 6.49 shipping
Used: Good | Details
Sold by anybookltduk
Condition: Used: Good
Comment: This is an ex-library book and may have the usual library/used-book markings inside.This book has soft covers. In good all round condition. . Please note the Image in this listing is a stock photo and may not match the covers of the actual item
Have one to sell?
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See this image

Professional JavaScript for Web Developers Paperback – Jan 14 2009

3.0 out of 5 stars 1 customer review

See all formats and editions Hide other formats and editions
Amazon Price
New from Used from
"Please retry"
CDN$ 130.29 CDN$ 1.88

There is a newer edition of this item:

Harry Potter and the Cursed Child
click to open popover

No Kindle device required. Download one of the Free Kindle apps to start reading Kindle books on your smartphone, tablet, and computer.
Getting the download link through email is temporarily not available. Please check back later.

  • Apple
  • Android
  • Windows Phone
  • Android

To get the free app, enter your mobile phone number.

Product Details

  • Paperback: 840 pages
  • Publisher: Wrox; 2 edition (Jan. 14 2009)
  • Language: English
  • ISBN-10: 047022780X
  • ISBN-13: 978-0470227800
  • Product Dimensions: 19.3 x 4.3 x 23.6 cm
  • Shipping Weight: 1.2 Kg
  • Average Customer Review: 3.0 out of 5 stars 1 customer review
  • Amazon Bestsellers Rank: #995,064 in Books (See Top 100 in Books)
  •  Would you like to update product info, give feedback on images, or tell us about a lower price?

  • See Complete Table of Contents

Product Description

From the Back Cover

If you want to achieve JavaScript's full potential, it is critical to understand its nature, history, and limitations. This book sets the stage by covering JavaScript from its very beginning to the present-day incarnations that include support for the DOM and Ajax. It also shows you how to extend this powerful language to meet specific needs and create seamless client-server communication without intermediaries such as Java or hidden frames.

You'll explore basic concepts of JavaScript including its version of object-oriented programming, inheritance, and its use in HTML and XHTML. A detailed discussion of the components that make up a JavaScript implementation follows, with specific focus on standards such as ECMAScript and DOM. All three levels of DOM are explained, including advanced topics such as event simulation, XML parsing, and XPath queries. You'll also learn how to utilize regular expressions and build dynamic user interfaces. This valuable insight will help you apply JavaScript solutions to the business problems faced by Web developers everywhere.

What you will learn from this book

  • All of the details regarding JavaScript's built-in reference types

  • How to use object-oriented programming in JavaScript

  • Ways to detect the client machine and its capabilities

  • Debugging tools and techniques for each browser

  • Steps for reading and manipulating XML data

  • How to create a custom event framework

  • Various techniques for storing data on the client machine

  • Approaches to working with JavaScript in an enterprise environment

Who this book is for
This book is for Web developers who want to use JavaScript to dramatically improve the usability of their Web sites and Web applications and for those with programming experience, especially object-oriented programming experience.

Wrox Professional guides are planned and written by working programmers to meet the real-world needs of programmers, developers, and IT professionals. Focused and relevant, they address the issues technology professionals face every day. They provide examples, practical solutions, and expert education in new technologies, all designed to help programmers do a better job.

About the Author

Nicholas C. Zakas has a B.S. in Computer Science from Merrimack College and an M.B.A. from Endicott College. He is the coauthor of Professional Ajax, Second Edition (Wiley, 2007) as well as dozens of online articles. Nicholas works for Yahoo! as a principal front-end engineer on Yahoo!’s front page and a contributor to the Yahoo! User Interface (YUI) Library. He has worked in web development for more than eight years, during which time he has helped develop web solutions in use at some of the largest companies in the world. Nicholas can be reached through his web site

Customer Reviews

3.0 out of 5 stars
5 star
4 star
3 star
2 star
1 star
See the customer review
Share your thoughts with other customers

Top Customer Reviews

Format: Paperback Verified Purchase
Normally there's one thing you can rely on in Wrox books: copious (if not excessive) appendices documenting every single API.

In this book it is strangely missing.

Is there a table which tells me the members of the document type? If there is, I can't find it. Can't remember the capitalization of getelementbyid? It's not even in the index.

So although the text is generally well-written and expanded my knowledge of Javascript, I still need to refer to other sources or cheat sheets for basic API information.
Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again.
Report abuse

Most Helpful Customer Reviews on (beta) HASH(0xa2371390) out of 5 stars 23 reviews
37 of 37 people found the following review helpful
HASH(0xa2394960) out of 5 stars Take your skills to the next level Aug. 2 2009
By Benjamin Toll - Published on
Format: Paperback
This is currently my favorite book on JavaScript.

Zakas doesn't pull any punches. It took me a while to work through some of the chapters, primarily Chapter 5 (Reference Types), Chapter 6 (Object-Oriented Programming) and Chapter 18 (Advanced Techniques) because of the difficulty of the material. This is a good thing: the difficulty is due to the sometimes non-intuituve aspects of JavaScript (i.e., function binding and currying), not to any possible failure on the part of the author. His command of his material is evident in his ability to explain these difficult techniques, which can seem overwhelming at first blush. I really like that he doesn't insult his reader's intelligence by sticking with the easier-to-understand aspects of JavaScript but covers the most advanced JavaScript topics thoroughly. I expect to be challenged when reading a book on JavaScript, and taking time to work through the examples by stepping through them in Firebug is well worth it and what I look forward to doing. I don't like when I can read a book and not have to touch a keyboard to understand the material.

I especially love the chapter on OO programming and how he breaks down each OO pattern. He starts with the most basic example of inheritance and works up to the best-case scenario, always giving the pros and cons of each pattern along the way and when each pattern could be employed. In doing so, he provides an invaluable service to those who want to understand how libraries are engineered. I remember when I first was looking at the source code for a particular library, and I was completely baffled by what I saw. For example, I would often see this:;

There was no explanation to what this esoteric statement was doing. Now, after reading the book (actually, at the time it was the first edition of the book), I understand that this is known as constructor stealing or object masquerading, and I now know that it's used to inherit instance properties. I had many, many moments like this, and now when I look at source code I can intelligently follow it and understand its intent.

This book empowers the reader with new knowledge. This is especially important when more and more I encounter front-enders who feel that knowing jQuery is knowing JavaScript. I remember when I first began looking at JavaScript libraries I was completely overwhelmed; from that moment I resolved to learn the JavaScript language inside and out if I could. Then, I'd go back to the libraries. Well, that has paid off in spades now, and I feel completely comfortable working in any library knowing what they're doing under the hood (and I have worked with several at different jobs). In fact, I write my own library in my spare time, and I never could have begun to do that or understand how to do that without books like this one and others.

I also love how Zakas gives the back-history to all the subjects he covers. Knowing where stuff came from is important, even if I would never use it. For example, I never knew there were HTML methods, and if I were to have come across them in the legacy code that I support I would've thought that they were user-defined methods. Now I know better. Knowledge is power.

I work on a team composed of Java developers, and this book has helped me to better communicate with them. I love how Zakas talked about how the Array methods can act as data structures. That's very important for a book to cover. Giving comparisons to other languages and emphasizing the similarities and how one language can translate to another is another way that this book has empowered me. It's much easier for me now to convey ideas to my teammates when I can express things like, "JavaScript doesn't have block-level scope like you're used to, but that's what anonymous functions are doing and that's why you see them here...", etc.

Lastly, the expanded chapter on Best Practices is invaluable. I've already employed them in my own work and have gotten the wheels in motion to do what I can at work (gzipping and including compression in our build process).

If you're left a little or a lot puzzled about prototypal inheritance, closures and OO programming in general, get a copy of this book and devote time to it. You'll walk away completely confident that there isn't anything out there that you can't figure out, as I did.

P.S. I suggest reading this book cover-to-cover, even if you feel like that doesn't apply to you. Zakas is very thorough in disseminating lesser-known aspects of both core and client-side JavaScript. In fact, there's so much that I'm going back for a second-helping.
30 of 31 people found the following review helpful
HASH(0xa2394a2c) out of 5 stars should be sub-titled "JavaScript: The Good Parts (the long version)" Feb. 5 2010
By R. Friesel Jr. - Published on
Format: Paperback Verified Purchase
While I was reading this, I liked to imagine that I was at university and that Douglas Crockford was the insanely popular genius professor that showed up late for lectures, and then either spoke too fast or else mumbled a lot, and then locked himself in his office refusing to answer the door during office hours while he worked on his Next Big Thing that would make everyone oooh and aaah and validate his brilliance. Meanwhile, in that same imaginary university, Nicholas Zakas was the graduate student that served as the TA to that class--and he happened to be equally brilliant and super-accessible and willing to take the time out to explain it all in a way that was thorough and comprehensible.

So that being said, if you consider yourself or would like to consider yourself a professional front-end engineer for web applications (or in any way want to become a JavaScript expert), I cannot recommend this book enough. On the one hand, you have Crockford's JavaScript: The Good Parts--which does a great job of eviscerating JavaScript while at the same time extracting its (well...) its Good Parts--but it's like someone ran the text through a minification utility and made it tokenized and super-dense and stripped out all the comments. And on the other hand, you have Zakas' Professional JavaScript for Web Developers which one might describe as <em>The Good Parts (the long version)</em>.

What Zakas gives us--while assuming that you are already doing some professional JavaScript web development--is a good overview of JavaScript/ECMAScript, with special care given to make the text practical. This is not strictly an academic exercise; he is careful to make sure that each example applies to real world scenarios (<em>i.e.</em>, web apps running in a browser) and that you are able to take away something useful and meaningful from the text's discussion. In other words, he provides a road map for how to make the most of JavaScript as a language (...since, as a front-end engineer on the web, you're stuck with it.) and how to make it work in all the convoluted, counter-intuitive situations that you are basically guaranteed to encounter (Even if you don't expect to ever work with XML. Even if you do think that the JavaScript 2 and ECMAScript 4 stuff is a little too future-forward/in-the-weeds type stuff.).

In a nutshell, if you are doing professional web development on the front end, this book needs to be on your desk. I can't wait to check out his next book...
12 of 12 people found the following review helpful
HASH(0xa2394d08) out of 5 stars Explains the WHYs often overlooked in copy-and-paste JavaScript books June 6 2009
By Harold - Published on
Format: Paperback
I bought this wonderful book a short while ago, just after the 2nd edition was released. Although I haven't finished it (over halfway through), the author's writing style makes understanding JavaScript easier. I have bought many other books on JavaScript but most follow the copy-and-paste code tutorial style which can be completely confusing for the complete JavaScript beginner such as myself. This book offers simple explanations using concepts that illuminate, rather than befuddle, the nuances and idiosyncrasies inherent in JavaScript. While there are many JavaScript books out there, the roads they follow lead to being just another bookshelf dust collector; this book breaks new trails into expanding your JavaScript skill, actually guiding you on to the golden path to Internet rockstardom!
12 of 13 people found the following review helpful
HASH(0xa2397240) out of 5 stars The only javascript book that you need to succeed!, Oct. 2 2009
By Pablo Arista - Published on
Format: Paperback Verified Purchase
**Note: This review is for the 2nd edition 2009 version**

This book is awesome. I had read previously read "Simply JavaScript" by Kevin Yank of [...]. That book is fine if you want to slap something into a website, clog up the browser's memory, and never write re-usable code. After that book (and many online tutorials) I was beginning to think there was something wrong with me because C++ was easier than JavaScript. Mr. Zakas goes in depth with JavaScript. I am so glad he wrote this book. I was riping my hair out of my head trying to understand this strange language. He covers everything from data types, functions, inline functions, references, arrays (which act like vectors and stacks, etc...), dom 1, 2, 3, event listeners, ajax, json, xml, animations, and the new future standards.

If you know C++ and JAVA it will be easier to understand the language. But generally speaking, if you know how to program you will do just fine. Just remember OOP in JavaScript is different. He explains the different methods since JavaScript isn't a OOP based languaged it's a prototype based language.

I read the 1 star reviews from the 1st edition. Don't be fooled by those reviews, the new version is king. If you really want to code JavaScript and master it, this book will be your bible.
7 of 7 people found the following review helpful
HASH(0xa2394aec) out of 5 stars Write Performant and Efficient Javascript Aug. 15 2009
By Ismail Elshareef - Published on
Format: Paperback
I bought this book the day after I attended a session given by Nicholas Zakas (author) at the Velocity Conference in San Jose this year. He offered some brilliant pointers and techniques on writing Javascript code that performs well and is efficient and stable on all browsers.

The book covers all aspects of Javascript in detail and approaches all subjects with an object-oriented mindset. From language basics (data types, variables, objects, functions) and event handling to the Document Object Model (DOM) and the Browser Object Model (BOM) to error handling and debugging to advanced features (custom events, drag and drop) and offline storage just to name a few. He also talks about AJAX, JSON vs. XML and HTML 5 and the new APIs it's bringing. There is also a brief history of language that is written in a much more informative way that in any other book I've read on the subject.

The book puts a lot of emphasis on performance and efficiency, especially when it comes to scope, memory management and algorithm complexity. You will finally learn and understand what closures are all about. You will know how some statements work in some browsers (IE is always the slowest browser.) You will learn a ton of stuff you won't find anywhere else neither online nor in a book.

There is also a section on best practices including maintainability, performance and deployment that I found especially useful.

If you are not a programmer AND just starting to learn Javascript, get Learning JavaScript, 2nd Edition. Otherwise, this is your book. It is essential in any respectable front-end developer's library.