<<Download>> Download Microsoft Word Course Outline Icon Word Version Download PDF Course Outline Icon PDF Version

Updated June 2026

Advanced JavaScript

Class Duration

35 hours of live training delivered over 5 days

Student Prerequisites

  • Completed JavaScript Essentials course or similar experience

Target Audience

  • Computer programming professionals
  • JavaScript programming experience required
  • Knowledge of Node.js and Web Browser APIs helpful

Teams continuing on can move to Node.js for Professionals.

Description

This comprehensive course is designed for computer programming professionals seeking to deepen their understanding of JavaScript. The course covers a wide range of topics including JavaScript basics, scopes, functions, objects, classes, asynchronous JavaScript, modules, error handling, immutable programming, testing, debugging, performance, and NPM. Each topic is designed to provide a deep dive into the subject matter, with a strong focus on practical application and hands-on experience. The course is taught live and can be attended either online or in-person. Whether you're looking to enhance your JavaScript skills or learn new ones, this course is perfect for you.

Learning Outcomes

  • Understand the basics of JavaScript including variables, types, functions, objects, and arrays.
  • Gain a deep understanding of JavaScript scopes including global, function, block, and lexical scopes, and hoisting.
  • Master JavaScript functions including function expressions, arrow functions, closures, higher-order functions, and recursion.
  • Learn about JavaScript objects including object literals, prototypes, classes, inheritance, and mixins.
  • Get hands-on experience with JavaScript classes including class syntax, static methods, getters and setters, inheritance, mixins, class properties, and binding & "this".
  • Dive into asynchronous JavaScript including event loop, single-threaded model, browser performance tool, callbacks, promises, async/await, generators, and observables (RxJS).
  • Understand JavaScript modules including CommonJS, ES modules, and dynamic imports.
  • Learn about error handling, immutable programming, testing, debugging, performance, and NPM.

Training Materials

All students receive comprehensive courseware covering all topics in the course. Courseware is distributed via GitHub in the form of documentation and extensive code samples. Students practice the topics covered through challenging hands-on lab exercises.

Software Requirements

Students will need a free, personal GitHub account to access the courseware. No local student setup is required, this course is delivered with GitHub Codespaces. The free allotment of Codespaces hours from GitHub is sufficient to complete the course.

Training Topics

Basic JavaScript Review (as needed)

  • Variables and Types
  • Functions
  • Objects
  • Arrays

Scope

  • Global Scope
  • Function Scope
  • Block Scope
  • Lexical Scope
  • Hoisting

Functions

  • Function Expressions
  • Arrow Functions
  • Closures
  • Higher-Order Functions
  • Recursion

Objects

  • Object Literals
  • Prototypes
  • Classes
  • Inheritance
  • Mixins

Classes

  • Class Syntax
  • Static Methods
  • Getters and Setters
  • Inheritance
  • Mixins
  • Class Properties
  • Binding & "this"

Asynchronous JavaScript

  • Event Loop
  • Single-Threaded Model
  • Browser Performance Tool
  • Callbacks
  • Promises
  • Async/Await
  • Generators
  • Observables (RxJS)

Modules

  • CommonJS
  • ES Modules
  • Dynamic Imports

Error Handling

  • try/catch
  • Error Objects
  • Custom Errors
  • Error Handling Patterns

Immutable Programming

  • Immutability
  • Pure Functions
  • Side Effects
  • Referential Transparency

Testing

  • Unit Testing
  • Integration Testing
  • Mocking
  • Test Runners
  • Code Coverage
  • Jest Framework

Debugging

  • Console
  • Breakpoints
  • Source Maps
  • Debugging Tools

Performance

  • Profiling
  • Memory Leaks
  • Optimization
  • Web Workers
  • Service Workers

NPM

  • Package Management
  • Semantic Versioning
  • Publishing Packages
  • NPM Scripts
  • Package Lock
  • Multiple Package Workspaces
<<Download>> Download Microsoft Word Course Outline Icon Word Version Download PDF Course Outline Icon PDF Version