Course Overview
JavaScript: Programming
(Second Edition) is a hands-on instruction book that will teach you
how to program using this powerful Internet-oriented programming
language.
Prerequisites
We
designed JavaScript: Programming (Second Edition) for the student
who is an experienced developer of Web pages and who has had some
exposure to JavaScript, probably through the use of scripts
developed by others. If you are comfortable creating Web pages by
writing HTML code, proficient with both Internet Explorer and
Navigator, and have at least tried to use other people's scripts in
your Web pages, then you are well matched to the prerequisites for
this course. This is a serious programming course. So, if you have
programmed in another language, you will likely excel.
To ensure your success, we recommend you first take the following
course or have equivalent knowledge:
• HTML 4.01: Web Authoring, Level 1:
• HTML 4.01: Web Authoring, Level 2:
• Introduction to Programming (Second Edition):
• Enhancing Web Pages With JavaScript:
Delivery Method
Instructor-led, group-paced, classroom-delivery learning model with
structured hands-on activities.
Benefits
Students will learn how to write JavaScript programs that use the
latest language techniques (version 1.5). Students will also learn
how to write programs that are compatible with previous versions of
the language and are cross-platform compatible.
Target Audience
Students enrolling in this course should have a strong understanding
of HTML programming and should have a basic familiarity with
JavaScript. They should have examined scripts written by others and
have implemented other people's scripts on their Web pages. This is
a serious programming course for those students who want to gain a
full understanding of this powerful programming language.
Performance-Based Objectives
Lesson objectives help students become comfortable with the
course, and also provide a means to evaluate learning. Upon
successful completion of this course, students will be able to:
• Apply fundamental JavaScript scripting techniques by creating
simple JavaScript scripts, interacting with browser error-handling
features, testing JavaScript syntax, detecting the use of different
language components, and evaluating coding best-practices
guidelines.
• Interact with JavaScript variables and operators by examining data
types and variable types supported by JavaScript; testing rules
governing the creation, use, and manipulation of data types and
variables; and testing the operators that manipulate data.
• Control the logical flow of your programs by writing scripts that
use control structures.
• Create and use functions, examine object characteristics, use
objects, instantiate objects, and create custom objects.
• Interact with the Window object by displaying and manipulating
status bar messages, and manipulating browser windows (including
opening and closing them).
• Interact with the Document object by entering code to write text
to a document loaded in the browser window, creating dynamic
documents, and examining incompatibility issues.
• Apply techniques for creating frameset documents, and access
frames and the objects contained in them.
• Interact with the Form object by reading data from and writing
data to form elements.
• Interact with the String and RegExp objects by using String object
methods to correct common data entry errors, creating dynamic text
effects by using substring methods, and building RegExp expressions
to test and validate string values.
• Craft functionality that validates form data by building the main
architecture for the form validation process, creating code that
tests individual form elements, creating functions that prepare data
for validation and display a dynamic validation report, and creating
code that validates radio, checkbox, and select list objects.
• Use and manipulate instances of the Date object, and perform
mathematical calculations with Math object methods.
• Recognize potential coding problems in a cross-browser environment
by examining the compatibility landscape and techniques for dealing
with incompatibilities, and by using browser detection to create
code that works around platform incompatibilities.
Course Outline
Lesson 1: Getting Started
Topic 1A: JavaScript Overview
Topic 1B: JavaScript Programming Basics
Lesson 2: Variables and Operators
Topic 2A: Variables and Data Types
Topic 2B: Using Variables and Literals
Topic 2C: Operators
Lesson 3: Control Statements
Topic 3A: Controlling the Flow: JavaScript Control Statements
Lesson 4: Functions and Objects
Topic 4A: Functions
Topic 4B: Objects
Lesson 5: The Window Object
Topic 5A: The Window Object
Topic 5B: Dialog Boxes
Topic 5C: Status Bar Messages
Topic 5D: Window Manipulations
Lesson 6: The Document Object
Topic 6A: The Document Object
Topic 6B: Writing to Documents
Topic 6C: Dynamic Documents
Lesson 7: Frames
Topic 7A: HTML Frames Review
Topic 7B: Scripting for Frames
Lesson 8: Forms and Forms-based Data
Topic 8A: The Form Object
Topic 8B: Working With Form Elements and Their Properties
Lesson 9: The String and RegExp Objects
Topic 9A: The String Object
Topic 9B: Using String Object Methods to Correct DataEntry Errors
Topic 9C: Creating Dynamic Effects With Substring Methods
Topic 9D: The RegExp Object
Lesson 10: Form Validation
Topic 10A: Form Validation: A Process
Topic 10B: Testing Data
Topic 10C: Preparing Data for Validation and ReportingResults
Topic 10D: Validating Non-text Form Objects
Lesson 11: Dates and Math
Topic 11A: The Date Object
Topic 11B: Using and Manipulating Dates
Topic 11C: The Math Object
Topic 11D: Doing Math With JavaScript
Lesson 12: Cross-browser Compatibility
Topic 12A: Examining the Compatibility Landscape
Topic 12B: Detecting Browsers and Platforms
Appendix A: Browser-specific Dynamic Documents
The Document Object Model
Appendix B: Other Form Validation Techniques
A Non-RegExp Object Approach