-
Chapter 1 Introduction to JavaScript
-
What Is JavaScript?
-
Versions of JavaScript
-
Client-Side JavaScript
-
JavaScript in Other Contexts
-
Exploring JavaScript
-
-
Core JavaScript
-
Chapter 2 Lexical Structure
- Character Set
- Case Sensitivity
- Whitespace and Line Breaks
- Optional Semicolons
- Comments
- Literals
- Identifiers
- Reserved Words
-
Chapter 3 Datatypes and Values
- Numbers
- Strings
- Boolean Values
- Functions
- Objects
- Arrays
- null
- undefined
- The Date Object
- Regular Expressions
- Error Objects
- Type Conversion Summary
- Primitive Datatype Wrapper Objects
- Object-to-Primitive Conversion
- By Value Versus by Reference
-
Chapter 4 Variables
- Variable Typing
- Variable Declaration
- Variable Scope
- Primitive Types and Reference Types
- Garbage Collection
- Variables as Properties
- Variable Scope Revisited
-
Chapter 5 Expressions and Operators
- Expressions
- Operator Overview
- Arithmetic Operators
- Equality Operators
- Relational Operators
- String Operators
- Logical Operators
- Bitwise Operators
- Assignment Operators
- Miscellaneous Operators
-
Chapter 6 Statements
- Expression Statements
- Compound Statements
- if
- else if
- switch
- while
- do/while
- for
- for/in
- Labels
- break
- continue
- var
- function
- return
- throw
- try/catch/finally
- with
- The Empty Statement
- Summary of JavaScript Statements
-
Chapter 7 Objects and Arrays
- Creating Objects
- Object Properties
- Objects as Associative Arrays
- Universal Object Properties and Methods
- Arrays
- Reading and Writing Array Elements
- Array Methods
- Array-Like Objects
-
Chapter 8 Functions
- Defining and Invoking Functions
- Function Arguments
- Functions as Data
- Functions as Methods
- Constructor Functions
- Function Properties and Methods
- Utility Function Examples
- Function Scope and Closures
- The Function() Constructor
-
Chapter 9 Classes, Constructors, and Prototypes
- Constructors
- Prototypes and Inheritance
- Simulating Classes in JavaScript
- Common Object Methods
- Superclasses and Subclasses
- Extending Without Inheriting
- Determining Object Type
- Example: A defineClass( ) Utility Method
-
Chapter 10 Modules and Namespaces
- Creating Modules and Namespaces
- Importing Symbols from Namespaces
- Module Utilities
-
Chapter 11 Pattern Matching with Regular Expressions
- Defining Regular Expressions
- String Methods for Pattern Matching
- The RegExp Object
-
Chapter 12 Scripting Java
- Embedding JavaScript
- Scripting Java
-
-
Client-Side JavaScript
-
Chapter 13 JavaScript in Web Browsers
- The Web Browser Environment
- Embedding Scripts in HTML
- Event Handlers in HTML
- JavaScript in URLs
- Execution of JavaScript Programs
- Client-Side Compatibility
- Accessibility
- JavaScript Security
- Other Web-Related JavaScript Embeddings
-
Chapter 14 Scripting Browser Windows
- Timers
- Browser Location and History
- Obtaining Window, Screen, and Browser Information
- Opening and Manipulating Windows
- Simple Dialog Boxes
- Scripting the Status Line
- Error Handling
- Multiple Windows and Frames
- Example: A Navigation Bar in a Frame
-
Chapter 15 Scripting Documents
- Dynamic Document Content
- Document Properties
- Legacy DOM: Document Object Collections
- Overview of the W3C DOM
- Traversing a Document
- Finding Elements in a Document
- Modifying a Document
- Adding Content to a Document
- Example: A Dynamically Created Table of Contents
- Querying Selected Text
- The IE 4 DOM
-
Chapter 16 Cascading Style Sheets and Dynamic HTML
- Overview of CSS
- CSS for DHTML
- Scripting Inline Styles
- Scripting Computed Styles
- Scripting CSS Classes
- Scripting Stylesheets
-
Chapter 17 Events and Event Handling
- Basic Event Handling
- Advanced Event Handling with DOM Level 2
- The Internet Explorer Event Model
- Mouse Events
- Key Events
- The onload Event
- Synthetic Events
-
Chapter 18 Forms and Form Elements
- The Form Object
- Defining Form Elements
- Scripting Form Elements
- Form Verification Example
-
Chapter 19 Cookies and Client-Side Persistence
- An Overview of Cookies
- Storing Cookies
- Reading Cookies
- Cookie Example
- Cookie Alternatives
- Persistent Data and Security
-
Chapter 20 Scripting HTTP
- Using XMLHttpRequest
- XMLHttpRequest Examples and Utilities
- Ajax and Dynamic Scripting
- Scripting HTTP with <script> Tags
-
Chapter 21 JavaScript and XML
- Obtaining XML Documents
- Manipulating XML with the DOM API
- Transforming XML with XSLT
- Querying XML with XPath
- Serializing XML
- Expanding HTML Templates with XML Data
- XML and Web Services
- E4X: ECMAScript for XML
-
Chapter 22 Scripted Client-Side Graphics
- Scripting Images
- Graphics with CSS
- SVG: Scalable Vector Graphics
- VML: Vector Markup Language
- Graphics in a <canvas>
- Graphics with Flash
- Graphics with Java
-
Chapter 23 Scripting Java Applets and Flash Movies
- Scripting Applets
- Scripting the Java Plug-in
- Scripting with Java
- Scripting Flash
- Scripting Flash 8
-
-
Core JavaScript Reference
-
Chapter 24 Core JavaScript Reference
-
-
Client-Side JavaScript Reference
-
Chapter 25 Client-Side JavaScript Reference
-
-
Colophon
- Title:
- JavaScript: The Definitive Guide, Fifth Edition
- By:
- David Flanagan
- Publisher:
- O'Reilly Media
- Formats:
-
- Ebook
- Safari Books Online
- Print Release:
- August 2006
- Ebook Release:
- December 2008
- Pages:
- 1032
- Print ISBN:
- 978-0-596-10199-2
- | ISBN 10:
- 0-596-10199-6
- Ebook ISBN:
- 978-0-596-15819-4
- | ISBN 10:
- 0-596-15819-X
The animal on the cover of JavaScript: The Definitive Guide, Fifth Edition, is a Javan rhinoceros. All five species of rhinoceros are distinguished by their large size, thick armor-like skin, three-toed feet, and single or double snout horn. The Javan rhinoceros, along with the Sumatran rhinoceros, is one of two forest-dwelling species. The Javan rhinoceros is similar in appearance to the Indian rhinoceros, but smaller and with certain distinguishing characteristics (primarily skin texture).
Rhinoceroses are often depicted standing up to their snouts in water or mud. In fact, they can frequently be found just like that. When not resting in a river, rhinos will dig deep pits in which to wallow. Both of these resting places provide a couple of advantages. First, they give the animal relief from the tropical heat and protection from blood-sucking flies. (The mud that the wallow leaves on the skin of the rhinoceros provides some protection from flies, also.) Second, mud wallows and river water help support the considerable weight of these huge animals, thereby relieving the strain on their legs and backs.
Folklore has long held that the horn of the rhinoceros possesses magical and aphrodisiacal powers, and that humans who gain possession of the horns will gain those powers, also. This is one of the reasons why rhinos are a prime target of poachers. All species of rhinoceros are in danger, and the Javan rhino population is the most precarious. Fewer than 100 of these animals are still living. At one time, Javan rhinos could be found throughout southeastern Asia, but they are now believed to exist only in Indonesia and Vietnam.
The cover image is is a 19th-century engraving from the Dover Pictorial Archive. The cover font is Adobe ITC Garamond. The text font is Linotype Birka; the heading font is Adobe Myriad Condensed; and the code font is LucasFont's TheSans Mono Condensed.
