TT4110: Introduction to JavaScript | Modern JavaScript Essentials

Become an EPIC Affiliate

To view the class schedule you need to become an Affiliate

  • Largest “Guaranteed To Run” public technical training schedules available
  • Easy to become an Affiliate – no charge or fee
Become an EPIC Affiliate

already an Affiliate?  Login

About this Course

Introduction to JavaScript / Modern JavaScript Essentials, is a three day hands-on course that equips you with essential JavaScript skills to build interactive, responsive web applications. Beginning with core programming concepts, you’ll learn to write clean, efficient code using variables, operators, and flow control, gaining a strong understanding of how JavaScript structures dynamic functionality in modern web projects. Through 50% hands-on labs, you’ll apply your knowledge in real coding scenarios, building confidence as you write, test, and refine JavaScript code.

As you advance, you’ll sharpen your debugging skills, using browser tools to set breakpoints, manage performance, and handle exceptions effectively. This course empowers you to work with complex functions, closures, and arrays, showing you how to manipulate data, control scope, and create more efficient, reusable code. You’ll gain the ability to identify and fix issues on the fly, improve your program’s efficiency, and use advanced JavaScript features to structure code that is both powerful and maintainable.

By the end of the course, you’ll be equipped with practical skills in Object-Oriented JavaScript and DOM manipulation, enabling you to craft responsive interfaces that update seamlessly. You’ll also dive into the latest ES6 enhancements, TypeScript for strong data typing, and secure coding practices, preparing you to build scalable applications with confidence. Additionally, you’ll explore HTML5 JavaScript APIs, such as geolocation and canvas, to create interactive features that enhance user engagement. Whether you’re a budding web developer or looking to refresh your skills, this course delivers the practical JavaScript expertise needed to succeed in today’s digital landscape.

Audience Profile

This course is designed for beginner to intermediate web developers, software engineers, and IT professionals who want to build a strong foundation in JavaScript for web development. Ideal for roles such as front-end developers, UX/UI designers, and junior full-stack developers, it's suited to anyone looking to enhance their skills in building dynamic and interactive web applications.

At Course Completion

This course combines engaging instructor-led presentations and useful demonstrations with valuable hands-on labs and engaging group activities. Throughout the course you'll learn how to:

Master Core JavaScript Syntax and Flow Control - Develop proficiency in writing efficient JavaScript code by understanding variables, operators, loops, and conditional statements, setting a foundation for creating dynamic web functionality.
Debug and Optimize JavaScript Code - Gain hands-on experience with browser debugging tools to identify, troubleshoot, and improve code performance, ensuring applications run smoothly and efficiently.
Utilize Advanced Functions and Closures - Learn to create and work with complex functions, closures, and anonymous functions to enhance code reusability and manage scope effectively within larger applications.
Build Interactive Web Pages Using DOM Manipulation - Acquire the skills to access, modify, and dynamically update the Document Object Model (DOM) to create responsive, interactive user interfaces.
Implement ES6+ Features and TypeScript for Scalable Code - Apply modern JavaScript features, such as ES6 syntax, modules, and TypeScript, to write clean, maintainable, and scalable code suited to modern web development needs.

If your team requires different topics, additional skills or a custom approach, our team will collaborate with you to adjust the course to focus on your specific learning objectives and goals.

Outline

Please note that this list of topics is based on our standard course offering, evolved from typical industry uses and trends. We will work with you to tune this course and level of coverage to target the skills you need most. Topics, agenda and labs are subject to change and may adjust during live delivery based on audience skill level, interests and participation.

JavaScript Basics

JavaScript Defined
ECMAScript
Variables and Operators
Flow Control and Conditionals

Debugging Tools

Using the strict mode and setting breakpoints
Browser debugging tools
Monitoring resource usage and performance
Emulating devices
Exceptions in JavaScript

JavaScript Functions

Functions in JavaScript
Anonymous Functions
Invoking Functions
Immediately Invoked Function Expression (IIFE)
Function Constructor
Function Scope and Closures

JavaScript Arrays, Math and Date

JavaScript Arrays and Singleton Objects
Array Methods
Understanding References vs. Copies of Arrays
JavaScript Literal Syntax for Data Structures
Looping Through Data Structures
Working with the Number, String, Math, and Date Built-in Objects

JavaScript Event Handling and the DOM

Events and Event Handling
HTML Document Object Model
Accessing the DOM
Dynamically Working with the DOM
DOM Challenges

Object-Oriented JavaScript

JavaScript “Objects” and “Classes”
Constructors
Extending Classes with Prototype
Reusable, Flexible Classes
ES6 Class Keyword
ES6 Extending a Class
ES6 Static Methods
Getters and Setters

ES6: The Next Step

ES6 as Syntactic Sugar
Lexically Scoped Variables and Constants
Default Parameters
Rest Parameters
Spread Operator
Arrow Syntax for Functions
Modules: Import and Export
Destructuring
ES6 Data Structures: Map, Set, WeakMap, WeakSet
ES6 Array Methods
ES6 Array Loops
ES6 Template Strings
ES6 Internationalization and Localization

TypeScript

Strong Data Typing with TypeScript
Compiling TypeScript to JavaScript
TypeScript Datatypes
TypeScript Classes and Interfaces

Introduction to JSON and AJAX

JSON: JavaScript Object Notation
AJAX
XMLHttpRequest Object
Fetch API
The Callback

JavaScript Best Practices

Code Conventions for the Lifecycle
Resolving Shared Resources
Constructs to Use
Constructs to Avoid
Memory Considerations

JavaScript Scheduling, Execution, and Security

Timers and Scheduling
Execution Contexts
Same Origin Policy and JavaScript
Security Considerations

HTML5 JavaScript API

Working with Web Storage API
Overview of Canvas API
Drag and Drop API
Cross-Domain Messaging
Offline with Application Cache
Geolocation: What, Why, and How

Prerequisites

This is an introductory level course for experienced software developers seeking to enhance and extend their core web development skillset leveraging JavaScript. Attendees should have practical experience developing basic software applications. This course provides an excellent foundation for continued learning to gain in-demand skills in in-demand skills and technologies such as NodeJS, Angular, React, Redux and more. This course can also be tailored for less experienced or non-developers as needed. Please inquire for details.