Probably the most complete and updated book that you may find about Javascript.The author made a great job writting about some of the most important topics on javascript development and highlighting the difference among browsers.Most of the topics are already covered in other javascript books I have read before, but not in the way Nicholas does, he usually goes deeper on every topic.If you have some knowledge on javascript and want to reach another level, this is the book for you. If you consider yourself a guru, you may enjoy it as well, but definitely, not for newbies. Professional JavaScript for Web Developers, 2nd Edition, provides a developer-level introduction along with the more advanced and useful features of JavaScript. Starting at the beginning, the book explores how JavaScript originated and evolved into what it is today. A detailed discussion of the components that make up a JavaScript implementation follows, with specific focus on standards such as ECMAScript and the Document Object Model (DOM). The differences in JavaScript implementations used in different popular web browsers are also discussed. Building on that base, the book moves on to cover basic concepts of JavaScript including its version of object-oriented programming, inheritance, and its use in various markup languages such as HTML. An in-depth examination of events and event handling is followed by an exploration of browser detection techniques and a guide to using regular expressions in JavaScript. The book then takes all this knowledge and applies it to creating dynamic user interfaces. The last part of the book is focused on advanced topics, including performance/memory optimization, best practices, and a look at where JavaScript is going in the future. This book is aimed at three groups of readers: Experienced developers familiar with object-oriented programming who are looking to learn JavaScript as it relates to traditional OO languages such as Java and C++ Web application developers attempting to enhance the usability of their web sites and web applications Novice JavaScript developers aiming to better understand the language In addition, familiarity with the following related technologies is a strong indicator that this book is for you: Java PHP ASP.NET HTML CSS XML This book is not aimed at beginners who lack a basic computer science background or those looking to add some simple user interactions to web sites. These readers should instead refer to Wrox's Beginning JavaScript, 3rd Edition (Wiley, 2007). This book covers: What Is JavaScript?--Explains the origins of where it came from, how it evolved, and what it is today. Concepts introduced include the relationship between JavaScript and ECMAScript, the Document Object Model (DOM), and the Browser Object Model (BOM). A discussion of the relevant standards from the European Computer Manufacturer's Association (ECMA) and the World Wide Web Consortium (W3C) is also included. JavaScript in HTML--Examines how JavaScript is used in conjunction with HTML to create dynamic web pages. Introduces the various ways of embedding JavaScript into a page, including a discussion surrounding the JavaScript content-type and its relationship to the element. Language Basics--Introduces basic language concepts, including syntax and flow control statements. Explains the syntactic similarities of JavaScript and other C-based languages and points out the differences. Type coercion is introduced as it relates to built-in operators. Variables, Scope, and Memory--Explores how variables are handled in JavaScript given their loosely typed nature. A discussion about the differences between primitive and reference values is included, as is information about execution context as it relates to varia... Three years after the first edition of this book was released, there have been several advances in the techniques and technology of JavaScript in the browser. This Second Edition has been thoroughly updated to include the latest versions of all web browsers. The book also introduces newer techniques and related technologies such as canvas, E4X, and JavaScript 2.0. Setting the stage by covering JavaScript in HTML, the book then explores the core of JavaScript, ECMAScript, to give you an understanding of the language's basic syntax, data types, statements, and memory management. What Is Javascript? -- Javascript In Html -- Language Basics -- Variables, Scope, And Memory -- Reference Types -- Object-oriented Programming -- Anonymous Functions -- The Browser Object Model -- Client Detection -- The Document Object Model -- Dom Levels 2 And 3.12. Events -- Scripting Forms -- Error Handling And Debugging -- Xml In Javascript.16. Ecmascript For Xml -- Ajax And Json -- Advanced Techniques -- Client-side Storage -- Best Practices -- Upcoming Apis -- The Evolution Of Javascript. Nicholas C. Zakas. Wrox Programmer To Programmer--cover. Includes Index. Looks at the history, features, and limitations of JavaScript, covering such topics as debugging tools, DOM storage, client-side databases, HTML, Selectors API, and design patterns.