Professional JavaScript for Web Developers (Paperback)

by Nicholas C. Zakas

Format: Paperback 960 pages

In stock

Usually despatched within 24 hours

Student Price Check

RRP £29.99

£23.99

You save: £6.00

Delivered FREE
in the UK

Add to basket

JavaScript is loosely based on Java, which is an object-oriented programming language that became popular for use on the Web by way of embedded applets. It has a similar syntax and programming methodology to Java, however, it should not be considered the "light" version of the language. JavaScript is its own language that found its home in web browsers around the world and enabled enhanced user interaction on websites as well as web applications. In this book JavaScript is covered from its beginning in the earliest Netscape browsers to the present-day versions that can support the DOM and Ajax. You will learn how to extend the language to suit specific needs and how to create client-server communications without intermediaries such as Java or hidden frames. You will also learn how to apply JavaScript solutions to business problems faced by web developers everywhere. This book provides a developer-level introduction along with more advanced and useful features of JavaScript. The book begins by exploring how JavaScript originated and evolved into what it is today. There is a discussion of the components that make up a JavaScript implementation that follows that has a 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. After building a strong base, the book goes on to cover basic concepts of JavaScript including its version of object-oriented programming, inheritance, and its use in HTML. The book then explores new APIs, such as HTML5, the Selectors API, and the File API. 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. The book is broken up into 25 chapters. Chapter 1 explains the origins of JavaScript including where it came from, how it evolved, and what it is today. Chapter 2 examines how JavaScript is used in conjunction with HTML to create dynamic webpages. Chapter 3 introduces basic language concepts including syntax and flow control statements. Chapter 4 explores how variables are handled in JavaScript given their loosely typed nature. Chapter 5 covers all of the details regarding JavaScript's built-in reference types such as object and array. Chapter 6 explains how to use object-oriented programing in JavaScript. Chapter 7 explores one of the most powerful aspects of JavaScript: function expressions. Chapter 8 introduces the Browser Object Model (BOM), which is responsible for objects allowing interaction with the browser itself. Chapter 9 explains various approaches to detecting the client machine and its capabilities. Chapter 10 introduces the Document Object Model (DOM) objects available in JavaScript as defined in DOM Level 1. Chapter 11 explains how other APIs, as well as other browsers, extend the DOM with more functionality. Chapter 12 builds on the previous two chapters by explaining how DOM Levels 2 and 3 augmented the DOM with additional properties, methods, and objects. Chapter 13 explains the nature of events in JavaScript, where they originated, legacy support, and how the DOM redefined how events should work. Devices such as the Wii and iPhone are covered. Chapter 14 looks at using JavaScript to enhance form interactions and work around browser limitations. Chapter 15 discusses the tag and how to use it to create on-the-fly graphics. Chapter 16 introduces JavaScript API changes as defined in HTML5. Chapter 17 discusses how browsers handle errors in JavaScript code and presents several ways to handle errors. Chapter 18 presents the features of JavaScript used to read and manipulate eXtensible Markup Language (XML) data. Chapter 19 discusses the ECMAScript for XML (E4X) extension to JavaScript, which is designed to simplify working with XML. Chapter 20 introduces the JSON data format as an alternative to XML. Chapter 21 looks at common Ajax techniques including the use of XMLHttpRequest object and Cross-Origin Resource Sharing (CORS) for cross-domain Ajax. Chapter 22 dives into some more complex JavaScript patterns including function currying, partial function application, and dynamic functions. Chapter 23 discusses how to detect when an application is offline and provides various techniques for storing data on the client machine. Chapter 24 explores approaches to working with JavaScript in an enterprise environment. Techniques for better maintainability are discussed, including coding techniques, formatting, and general programming practices. Chapter 25 introduces APIs being created to augment JavaScript in the browser. This book is aimed at three groups of readers: Experienced developers who are familiar with object-oriented programming and 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 websites 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 will be beneficial for you: Java PHP ASP.Net HTML CSS XML This book is not aimed at beginners who lack a basic computer science background or at those looking to add some simple user interactions to websites. These readers should refer to Wrox's Beginning JavaScript, 4th Edition (Wiley, 2009). In order to run the samples in the book, you need the following: Windows XP, Windows 7, or Mac OS X Internet Explorer 6 or higher, Firefox 2 or higher, Opera 9 or higher, Chrome, or Safari 2 or higher Nicholas C. Zakas has been working 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 has also worked on large-scale consumer websites such as MyYahoo! and the Yahoo! homepage. Nicholas is a presentation architect at Yahoo! and has guided front-end development and standards for some of the most-visited websites in the world. He regularly gives talks at companies, conferences, and meet-ups regarding front-end best practices and new technology. He has authored several books including Professional Ajax and High Performance JavaScript .

Book details

Published
27/01/2012

Publisher
Wrox Press

ISBN
9781118026694


Other books by this author See all titles

 

Customers who bought this title, also bought...

The prices displayed are for website purchases only, and may differ to the prices in Waterstones shops.