JavaScript Essentials for Web Development

Course Outline

Attend this JavaScript Essentials for Web Development training course and gain knowledge and skills to create modern, interactive websites. In this course, you learn how to structure code, add interactivity, and leverage JavaScript to generate dynamic HTML5. You will also benefit from the use of best practices and progressive enhancement techniques. You will grow significantly on your path to achieving the knowledge and skills of a full stack developer by accessing data asynchronously.

    JavaScript Essentials for Web Development Benefits

    • In this JavaScript Development course, you will learn how to:

      • Write and debug client-side JavaScript to create modern pages for a variety of devices.
      • Implement dynamic HTML effects to improve interactivity.
      • Apply unobtrusive JavaScript programming patterns.
      • Create dynamic, interactive forms with enhanced validation.
      • Leverage continued support with after-course one-on-one instructor coaching and computing sandbox.
    • Prerequisites

      Experience developing web pages with HTML and CSS at the level of Course 2320, HTML5, CSS3, and JavaScript for Modern Web Development.

    Full Stack JavaScript Development Course Outline

    Module 1: Introduction and Overview

    • ECMAScript versions
    • Applying progressive enhancement
    • Adding JavaScript to web pages
    • Unobtrusive JavaScript

    Module 2: Learning Basic Syntax

    Core JavaScript syntax

    • Coding variables, statements, and control blocks
    • Working with objects, strings, and arrays

    Implementation

    • Controlling client-side browser objects
    • Adding the behavior unobtrusively

    Module 3: Simplifying Code with Functions

    Defining Functions

    • Declaration/Expression
    • Anonymous
    • Callback
    • Immediately Invoked Function Expressions (IIFE)
    • Passing optional parameters

    Module 4: Exploring Objects, Classes, and Modules

    Declaring objects 

    • Structuring code with Object Literal Notation (OLN)
    • Augmenting functionality with the prototype
    • Explore classes

    Module 5: Introducing Built-In Objects

    • Perform complex math with the Math object 
    • Manipulate dates with the Date 
    • Organize data with the Set object 
    • Manage data with the Map object 

    Module 6: Managing DOM Objects with JavaScript

    Manipulating the Document Object Model (DOM)

    • Creating, reading, updating, and deleting web page markup
    • Targeting elements by ID, tag name, and class name
    • Modifying presentational CSS for dynamic HTML effects

    Handling events

    • Adding and removing event handlers unobtrusively
    • Inspecting event object properties
    • Preventing default browser actions
    • Minimizing handlers with event delegation

    Interacting with the browser and user

    • Responding to users' actions
    • Gathering information
    • Managing errors

    Loading JavaScript Conditionally

    • Implementing feature testing to conditionally load required JavaScript
    • Overcoming missing functionality with polyfills, and fallbacks

    Module 7: Processing HTML Forms

    Assisting users in ensuring data validity

    • Validating without JavaScript
    • Implementing dynamic select menus
    • Preventing forms from submitting with enhanced validation
    • Customizing validation error messages

    Validating data on the client side

    • Matching data patterns with regular expressions
    • Form vs. field validation
    • Invoking server-side business logic

    Module 8: Asynchronous Processing and REST Calls

    Asynchronous Processing 

    • Exploring Promises 

    Retrieving data 

    • Using REST to manipulate data 
    • Using the XMLHttpRequest object 
    • Using the Fetch API 
    Course Dates - North America
    Course Dates - Europe
    Attendance Method
    Additional Details (optional)