CIW JavaScript Specialist - Course Description

 View the Course Description and Exam Objectives for our NEW JavaScript Specialist 2.0 course and certification!

Scripting Language

The JavaScript Specialist course focuses on the fundamental concepts of the JavaScript language. This course will empower you with the skills to design client-side, platform-independent solutions that greatly increase the value of your Web site by providing interactivity and interest. You will learn how to use JavaScript to communicate with users, modify the Document Object Model (DOM), control program flow, validate forms, animate images, create cookies, change HTML on the fly, and communicate with databases.

The first part of this course focuses on essential JavaScript principles and techniques, including common programming practices, working with variables and data, and using functions, methods and events.

Next, you will learn intermediate JavaScript programming techniques that will build upon your knowledge and present solutions for more functional and exciting Web pages. These include using control structures for program flow, manipulating the JavaScript DOM, using language objects, creating expressions, and creating and using custom objects.

You will then apply JavaScript programming techniques to develop interactive forms, change HTML dynamically, create and use cookies, and explore security issues related to JavaScript. You will also learn about extensions to the JavaScript language, including JavaScript code libraries, Web APIs and advanced interactive Web applications with AJAX. Finally, you will learn throughout the course about tools and techniques for debugging and troubleshooting your JavaScript code.

By the end of this course, you will understand and use the most popular applications of JavaScript.


Introduction to JavaScript

Introduction to Scripting
JavaScript Characteristics
JavaScript and Common Programming Concepts
JavaScript Flavors and Versions
Technologies Based on JavaScript
Server-Side vs. Client-Side Applications
Annotating Your Code with Comments
Expanding the Role of JavaScript

Working with Variables and Data in JavaScript

Using JavaScript to Communicate with the User
Using Data More Than Once: Variables
JavaScript Operators
JavaScript Expressions
JavaScript Alerts and Prompts
Inline Scripting, Simple User Events and Basic Event Handlers
JavaScript Keywords and Reserved Words

Functions, Methods and Events in JavaScript

Introduction to Functions
Defining a Function
Calling a Function
Methods as Functions
Types of Functions
User Events and JavaScript Event Handlers

Debugging and Troubleshooting JavaScript

What Is Debugging?
Tools for Debugging Code
Testing Code in Various Browsers
Debugging Logic Errors
JavaScript and Mobile Devices

Controlling Program Flow in JavaScript

Controlling Decisional Program Flow
The if...else Statement
The while Statement
The do...while Statement
The for Statement
The break Statement
The continue Statement
The switch Statement

The JavaScript Document Object Model (DOM)

The JavaScript Document Object Model (DOM)
The window Object
The document Object
The image Object
The history Object
The location Object
The navigator Object
The Virtual DOM

JavaScript Language Objects

Introduction to JavaScript Language Objects
The String Object
Evaluating Strings
JavaScript Regular Expressions
The Array Object
The forEach Method
The Map Method
The Date Object
Setting and Extracting Time Information
The Math Object

Custom JavaScript Objects

Creating Custom Objects
Creating a JavaScript Object: The Constructor
Creating an Instance of a Custom Object
Creating Object Methods
Creating Functions for Your Objects
Concept of Classes
Iterators and Generators
Call, apply and bind

Changing HTML on the Fly

Changing HTML on the Fly
Using the getElementById Method
Using the getElementsByName Method
Using the getElementsByTagName Method
Using the getElementsByClassName Method
Modifying Attributes within the DOM
Appending Text to the DOM

Developing Interactive Forms with JavaScript

Interactive Forms
Overview of Form Elements
Referring to Form Elements
The form Object
The input Elements and text Objects
The textarea object
The select Object
Form Validation
Common form Security Errors

JavaScript Security

Introduction to JavaScript Security Issues
Browser vs. Operating System
Browser-Specific Security Issues
Browser Compatibility and Client-Side Detection
Script Blocking
Differences in document.write Among Browsers
Malicious and Accidental Coding
Frame-to-Frame URL Changing
Signed Scripts
Cross-Site Scripting (XSS)
Cookies and Security in JavaScript
Ethics in Collecting, Storing, Using and Protecting User Data
Creating Secure JavaScript Code

JavaScript Libraries and Frameworks

Introduction to JavaScript Libraries and Frameworks
Choosing a Code Library
External and Pre-Made Scripts
Loading Your First Library
Using JavaScript Library Plug-ins
Using Frameworks
Best Practices with JavaScript Libraries and Frameworks
Copyright Issues and JavaScript

JavaScript and AJAX

Introduction to AJAX
Handling Data and Content Types
Interactions Among JavaScript, Data and HTML
Using AJAX Scripts
AJAX and Servers
AJAX and Databases
Usability Issues with AJAX
Combining AJAX with Libraries

Introduction to Web APIs

Web Application Programming Interface (API)
The Web Storage API
The Geolocation API
The Canvas API

Target Audience

The CIW JavaScript Specialist course is for individuals who want to understand how to fully use the features of the JavaScript programming language in Web application development. These specialized Web language skills can help you begin or grow a career in advanced Web development and technologies:

  • Web developers
  • Software developers
  • Application programmers
  • Full-stack developers
  • Web Designers
  • UI/UX Designers

Job Responsibilities

Implement and maintain hypertext-based Web sites using authoring and scripting languages; create Web content; use Web management tools and digital media tools; and apply human-factor principles to design.


No prior knowledge of the JavaScript programming language is necessary. However, students should be familiar with using the Internet, developing Web pages and configuring networks to a level consistent with that found in the CIW Web Foundations series. Knowledge of HTML code development is required.

Close Window