array('UTF-8', 'en'), 'home' => array('index.html', 'Core JavaScript Guide 1.5'), 'this' => array('index.html', 'Core JavaScript Guide 1.5'), 'next' => array('preface.html', 'About this Book'), 'prev' => array('', ''), 'toc' => array( array('preface.html#1001665', 'About this Book', 0), /* array('preface.html#1003152', 'New Features in this Release', 1), array('preface.html#1001681', 'What You Should Already Know', 1), array('preface.html#1003515', 'JavaScript Versions', 1), array('preface.html#1001692', 'Where to Find JavaScript Information', 1), array('preface.html#1001745', 'Document Conventions', 1), */ array('intro.html#1009367', 'Chapter 1. JavaScript Overview', 0), /* array('intro.html#1009369', 'What Is JavaScript?', 1), array('intro.html#1012569', 'JavaScript and Java', 1), array('intro.html#1013654', 'JavaScript and the ECMA Specification', 1), array('intro.html#1013678', 'Relationship Between JavaScript and ECMA Versions', 2), array('intro.html#1013717', 'JavaScript Documentation vs. the ECMA Specification', 2), array('intro.html#1013722', 'JavaScript and ECMA Terminology', 2), array('intro.html#1023167', 'New Features in this Release', 1), */ array('partcore.html#999869', 'Part 1. Core Language Features', 0), array('ident.html#1008302', 'Chapter 2. Values, Variables, and Literals', 0), /* array('ident.html#1008306', 'Values', 1), array('ident.html#1008319', 'Data Type Conversion', 2), array('ident.html#1008330', 'Variables', 1), array('ident.html#1008338', 'Declaring Variables', 2), array('ident.html#1012659', 'Evaluating Variables', 2), array('ident.html#1009822', 'Variable Scope', 2), array('ident.html#1012963', 'Constants', 1), array('ident.html#1013090', 'Literals', 1), array('ident.html#1011655', 'Array Literals', 2), array('ident.html#1012095', 'Boolean Literals', 2), array('ident.html#1009427', 'Floating-Point Literals', 2), array('ident.html#1008351', 'Integers', 2), array('ident.html#1009450', 'Object Literals', 2), array('ident.html#1008368', 'String Literals', 2), array('ident.html#1009568', 'Unicode', 1), array('ident.html#1009571', 'Unicode Compatibility with ASCII and ISO', 2), array('ident.html#1009576', 'Unicode Escape Sequences', 2), array('ident.html#1009690', 'Displaying Characters with Unicode', 2), */ array('expr.html#1008302', 'Chapter 3. Expressions and Operators', 0), /* array('expr.html#1010338', 'Expressions', 1), array('expr.html#1008323', 'Operators', 1), array('expr.html#1008336', 'Assignment Operators', 2), array('expr.html#1010037', 'Comparison Operators', 2), array('expr.html#1008458', 'Arithmetic Operators', 2), array('expr.html#1008505', 'Bitwise Operators', 2), array('expr.html#1008622', 'Logical Operators', 2), array('expr.html#1008684', 'String Operators', 2), array('expr.html#1008688', 'Special Operators', 2), array('expr.html#1008750', 'Operator Precedence', 2), */ array('regexp.html#1010922', 'Chapter 4. Regular Expressions', 0), /* array('regexp.html#1008311', 'Creating a Regular Expression', 1), array('regexp.html#1010689', 'Writing a Regular Expression Pattern', 1), array('regexp.html#1008325', 'Using Simple Patterns', 2), array('regexp.html#1008327', 'Using Special Characters', 2), array('regexp.html#1008498', 'Using Parentheses', 2), array('regexp.html#1008506', 'Working With Regular Expressions', 1), array('regexp.html#1008659', 'Using Parenthesized Substring Matches', 2), array('regexp.html#1008681', 'Executing a Global Search, Ignoring Case, and Considering Multiline Input', 2), array('regexp.html#1013064', 'Examples', 1), array('regexp.html#1008695', 'Changing the Order in an Input String', 2), array('regexp.html#1008713', 'Using Special Characters to Verify Input', 2), */ array('stmtsov.html#1008303', 'Chapter 5. Statements', 0), /* array('stmtsov.html#1016322', 'Block Statement', 1), array('stmtsov.html#1008319', 'Conditional Statements', 1), array('stmtsov.html#1008323', 'if...else Statement', 2), array('stmtsov.html#1008329', 'switch Statement', 2), array('stmtsov.html#1008340', 'Loop Statements', 1), array('stmtsov.html#1008347', 'for Statement', 2), array('stmtsov.html#1008359', 'do...while Statement', 2), array('stmtsov.html#1008366', 'while Statement', 2), array('stmtsov.html#1010474', 'label Statement', 2), array('stmtsov.html#1008389', 'break Statement', 2), array('stmtsov.html#1008402', 'continue Statement', 2), array('stmtsov.html#1008417', 'Object Manipulation Statements', 1), array('stmtsov.html#1008452', 'for...in Statement', 2), array('stmtsov.html#1008460', 'with Statement', 2), array('stmtsov.html#1008468', 'Comments', 1), array('stmtsov.html#1011537', 'Exception Handling Statements', 1), array('stmtsov.html#1014198', 'The throw Statement', 2), array('stmtsov.html#1012168', 'The try...catch Statement', 2), */ array('fcns.html#1008302', 'Chapter 6. Functions', 0), /* array('fcns.html#1008305', 'Defining Functions', 1), array('fcns.html#1013889', 'Calling Functions', 1), array('fcns.html#1012766', 'Using the arguments Array', 1), array('fcns.html#1008357', 'Predefined Functions', 1), array('fcns.html#1008364', 'eval Function', 2), array('fcns.html#1009925', 'isFinite Function', 2), array('fcns.html#1008370', 'isNaN Function', 2), array('fcns.html#1008379', 'parseInt and parseFloat Functions', 2), array('fcns.html#1008394', 'Number and String Functions', 2), array('fcns.html#1012712', 'escape and unescape Functions', 2), */ array('obj.html#1008302', 'Chapter 7. Working with Objects', 0), /* array('obj.html#1008312', 'Objects and Properties', 1), array('obj.html#1008327', 'Creating New Objects', 1), array('obj.html#1008330', 'Using Object Initializers', 2), array('obj.html#1008361', 'Using a Constructor Function', 2), array('obj.html#1008392', 'Indexing Object Properties', 2), array('obj.html#1008397', 'Defining Properties for an Object Type', 2), array('obj.html#1008406', 'Defining Methods', 2), array('obj.html#1008434', 'Using this for Object References', 2), array('obj.html#1018325', 'Defining Getters and Setters', 2), array('obj.html#1008445', 'Deleting Properties', 2), array('obj.html#1010352', 'Predefined Core Objects', 1), array('obj.html#1008453', 'Array Object', 2), array('obj.html#1008502', 'Boolean Object', 2), array('obj.html#1008512', 'Date Object', 2), array('obj.html#1008590', 'Function Object', 2), array('obj.html#1008620', 'Math Object', 2), array('obj.html#1008686', 'Number Object', 2), array('obj.html#1018247', 'RegExp Object', 2), array('obj.html#1008731', 'String Object', 2), */ array('obj2.html#1013803', 'Chapter 8. Details of the Object Model', 0), /* array('obj2.html#1008342', 'Class-Based vs. Prototype-Based Languages', 1), array('obj2.html#1011360', 'Defining a Class', 2), array('obj2.html#1011368', 'Subclasses and Inheritance', 2), array('obj2.html#1011428', 'Adding and Removing Properties', 2), array('obj2.html#1011444', 'Summary of Differences', 2), array('obj2.html#1008388', 'The Employee Example', 1), array('obj2.html#1008404', 'Creating the Hierarchy', 1), array('obj2.html#1008465', 'Object Properties', 1), array('obj2.html#1008468', 'Inheriting Properties', 2), array('obj2.html#1008483', 'Adding Properties', 2), array('obj2.html#1008499', 'More Flexible Constructors', 1), array('obj2.html#1008567', 'Property Inheritance Revisited', 1), array('obj2.html#1008570', 'Local versus Inherited Values', 2), array('obj2.html#1008594', 'Determining Instance Relationships', 2), array('obj2.html#1008610', 'Global Information in Constructors', 2), array('obj2.html#1008628', 'No Multiple Inheritance', 2), */ array('partlc.html#999869', 'Part 2. Working with LiveConnect', 0), array('lc.html#1008305', 'Chapter 9. LiveConnect Overview', 0), /* array('lc.html#1013074', 'Working with Wrappers', 1), array('lc.html#1014290', 'JavaScript to Java Communication', 1), array('lc.html#1029016', 'The Packages Object', 2), array('lc.html#1029099', 'Working with Java Arrays', 2), array('lc.html#1029045', 'Package and Class References', 2), array('lc.html#1029446', 'Arguments of Type char', 2), array('lc.html#1033594', 'Handling Java Exceptions in JavaScript', 2), array('lc.html#1008480', 'Java to JavaScript Communication', 1), array('lc.html#1030717', 'Using the LiveConnect Classes', 2), array('lc.html#1037078', 'Data Type Conversions', 1), array('lc.html#1037090', 'JavaScript to Java Conversions', 2), array('lc.html#1037422', 'Java to JavaScript Conversions', 2), */ array('glossary.html#996904', 'Glossary', 0), array('ix.html#573', 'Index', 0) ))); manual_header(); ?>


Core JavaScript Guide


About this Book

New Features in this Release
What You Should Already Know
JavaScript Versions
Where to Find JavaScript Information
Document Conventions
Chapter 1 JavaScript Overview
What Is JavaScript?
JavaScript and Java
JavaScript and the ECMA Specification
Relationship Between JavaScript and ECMA Versions
JavaScript Documentation vs. the ECMA Specification
JavaScript and ECMA Terminology
New Features in this Release

Part 1 Core Language Features

Chapter 2 Values, Variables, and Literals

Values
Data Type Conversion
Variables
Declaring Variables
Evaluating Variables
Variable Scope
Constants
Literals
Array Literals
Boolean Literals
Floating-Point Literals
Integers
Object Literals
String Literals
Unicode
Unicode Compatibility with ASCII and ISO
Unicode Escape Sequences
Displaying Characters with Unicode
Chapter 3 Expressions and Operators
Expressions
Operators
Assignment Operators
Comparison Operators
Arithmetic Operators
Bitwise Operators
Logical Operators
String Operators
Special Operators
Operator Precedence
Chapter 4 Regular Expressions
Creating a Regular Expression
Writing a Regular Expression Pattern
Using Simple Patterns
Using Special Characters
Using Parentheses
Working With Regular Expressions
Using Parenthesized Substring Matches
Executing a Global Search, Ignoring Case, and Considering Multiline Input
Examples
Changing the Order in an Input String
Using Special Characters to Verify Input
Chapter 5 Statements
Block Statement
Conditional Statements
if...else Statement
switch Statement
Loop Statements
for Statement
do...while Statement
while Statement
label Statement
break Statement
continue Statement
Object Manipulation Statements
for...in Statement
with Statement
Comments
Exception Handling Statements
The throw Statement
The try...catch Statement
Chapter 6 Functions
Defining Functions
Calling Functions
Using the arguments Array
Predefined Functions
eval Function
isFinite Function
isNaN Function
parseInt and parseFloat Functions
Number and String Functions
escape and unescape Functions
Chapter 7 Working with Objects
Objects and Properties
Creating New Objects
Using Object Initializers
Using a Constructor Function
Indexing Object Properties
Defining Properties for an Object Type
Defining Methods
Using this for Object References
Defining Getters and Setters
Deleting Properties
Predefined Core Objects
Array Object
Boolean Object
Date Object
Function Object
Math Object
Number Object
RegExp Object
String Object
Chapter 8 Details of the Object Model
Class-Based vs. Prototype-Based Languages
Defining a Class
Subclasses and Inheritance
Adding and Removing Properties
Summary of Differences
The Employee Example
Creating the Hierarchy
Object Properties
Inheriting Properties
Adding Properties
More Flexible Constructors
Property Inheritance Revisited
Local versus Inherited Values
Determining Instance Relationships
Global Information in Constructors
No Multiple Inheritance

Part 2 Working with LiveConnect

Chapter 9 LiveConnect Overview

Working with Wrappers
JavaScript to Java Communication
The Packages Object
Working with Java Arrays
Package and Class References
Arguments of Type char
Handling Java Exceptions in JavaScript
Java to JavaScript Communication
Using the LiveConnect Classes
Data Type Conversions
JavaScript to Java Conversions
Java to JavaScript Conversions
Glossary

Index