Effective JavaScript: 68 Specific Ways to Harness the Power of JavaScript

Addison-Wesley, 26 . 2012 . - : 240

Its uncommon to have a programming language wonk who can speak in such comfortable and friendly language as David does. His walk through the syntax and semantics of JavaScript is both charming and hugely insightful; reminders of gotchas complement realistic use cases, paced at a comfortable curve. Youll find when you finish the book that youve gained a strong and comprehensive sense of mastery.

Paul Irish, developer advocate, Google Chrome

This is not a book for those looking for shortcuts; rather it is hard-won experience distilled into a guided tour. Its one of the few books on JS that Ill recommend without hesitation.

Alex Russell, TC39 member, software engineer, Google

In order to truly master JavaScript, you need to learn how to work effectively with the languages flexible, expressive features and how to avoid its pitfalls. No matter how long youve been writing JavaScript code, Effective JavaScript will help deepen your understanding of this powerful language, so you can build more predictable, reliable, and maintainable programs.

Author David Herman, with his years of experience on Ecmas JavaScript standardization committee, illuminates the languages inner workings as never beforehelping you take full advantage of JavaScripts expressiveness. Reflecting the latest versions of the JavaScript standard, the book offers well-proven techniques and best practices youll rely on for years to come.

Effective JavaScript is organized around 68 proven approaches for writing better JavaScript, backed by concrete examples. Youll learn how to choose the right programming style for each project, manage unanticipated problems, and work more successfully with every facet of JavaScript programming from data structures to concurrency. Key features include

  • Better ways to use prototype-based object-oriented programming
  • Subtleties and solutions for working with arrays and dictionary objects
  • Precise and practical explanations of JavaScripts functions and variable scoping semantics
  • Useful JavaScript programming patterns and idioms, such as options objects and method chaining
  • In-depth guidance on using JavaScripts unique run-to-completion approach to concurrency




Accustoming Yourself to JavaScript
Variable Scope
Working with Functions
Objects and Prototypes
Arrays and Dictionaries
Library and API Design



David Herman is a principal researcher at Mozilla Research. He holds a BA in computer science from Grinnell College, and an MS and PhD in computer science from Northeastern University. David serves on Ecma TC39, the committee responsible for the standardization of JavaScript.