Professional JavaScript for Web Developers
<p>This book provides a developer-level introduction along with more advanced and useful features of JavaScript. Coverage includes:</p> <ul> <li>JavaScript use with HTML to create dynamic webpages, language concepts including syntax and flow control statements</li> <li>variable handling given their loosely typed nature</li> <li>built-in reference types such as object and array</li> <li>object-oriented programing</li> <li>powerful aspects of function expressions</li> <li>Browser Object Model allowing interaction with the browser itself</li> <li>detecting the client and its capabilities</li> <li>Document Object Model (DOM) objects available in DOM Level 1</li> <li>how DOM Levels 2 and 3 augmented the DOM</li> <li>events, legacy support, and how the DOM redefined how events should work</li> <li>enhancing form interactions and working around browser limitations</li> <li>using the <canvas > tag to create on-the-fly graphics</li> <li>JavaScript API changes in HTML5</li> <li>how browsers handle JavaScript errors and error handling</li> <li>features of JavaScript used to read and manipulate XML data</li> <li>the JSON data format as an alternative to XML</li> <li>Ajax techniques including the use of XMLHttpRequest object and CORS</li> <li>complex patterns including function currying, partial function application, and dynamic functions</li> <li>offline detection and storing data on the client machine</li> <li>techniques for JavaScript in an enterprise environment for better maintainability</li> </ul> <p>This book is aimed at three groups of readers: Experienced object-oriented programming developers looking to learn JavaScript as it relates to traditional OO languages such as Java and C++; Web application developers attempting to enhance site usability; novice JavaScript developers.</p> <p>Nicholas C. Zakas worked with the Web for over a decade. He has worked on corporate intranet applications used by some of the largest companies in the world and large-scale consumer websites such as MyYahoo! and the Yahoo! homepage. He regularly gives talks at companies and conferences regarding front-end best practices and new technology.</p>