Advanced JavaScript Programming Course

Description

Modern web applications often grow into large and complex JavaScript systems. When this happens, the code can become hard to understand, change and maintain. This course is useful for teams working on larger JavaScript applications or maintaining complex codebases.

The Advanced JavaScript Programming course focuses on the language features that help developers manage this complexity. You will learn techniques that make JavaScript code clearer, easier to maintain and easier to extend. You will also learn how JavaScript handles asynchronous tasks, which are common in modern web applications.

The course covers advanced topics such as keyed collections, asynchronous programming, closures and modern object-oriented features. It also explains the relationship between JavaScript and TypeScript, and how the two languages are used in professional development.


Intended audience

This course is useful if:

  • You need to understand advanced JavaScript features used in modern frameworks and libraries.
  • You need to maintain or support JavaScript code that uses advanced language features.
  • You are a JavaScript developer and you need to write cleaner JavaScript to reduce rework and long-term maintenance costs.

Prerequisites

  • You must be comfortable working with HTML and CSS, either through our HTML and CSS course or equivalent practical experience.
  • You should already have experience developing JavaScript code used in web pages or web applications. If you do not have this experience, first attend our JavaScript Programming course.

Course details

Price: R8,900 excluding VAT per delegate.

Included:

  • Electronic course material.
  • Attendance certificate (PDF).

Duration: 3 days.

Delivery: Virtual classroom
See how virtual training works.

See the course schedule for upcoming dates.

Booking information

Email your booking to info@incusdata.com. A purchase order, or completed enrolment form is sufficient.

We will confirm the booking and issue an invoice.

Course contents

Introduction

  • Review core JavaScript concepts.
  • Use JavaScript outside the browser.

Modern JavaScript Features

  • Use destructuring assignment.
  • Use rest parameters and spread syntax.
  • Use optional chaining.
  • Work with the Symbol type.
  • Use modern collections such as Map and Set.

Advanced Function Techniques

  • Understand variable scope and closures.
  • Use recursion and understand the call stack.
  • Use named function expressions.
  • Bind functions and control execution context.
  • Use arrow functions effectively.

Asynchronous JavaScript

  • Understand the JavaScript concurrency model and event loop.
  • Use callbacks.
  • Work with Promises and promisification.
  • Write asynchronous code using async and await.
  • Coordinate multiple asynchronous operations.

Event-Driven Programming

  • Work with browser events.
  • Understand event bubbling and capturing.
  • Use event delegation.
  • Dispatch custom events.
  • Load scripts using async and defer.
  • Monitor DOM changes using MutationObserver.

Working with Objects

  • Understand object references and copying.
  • Understand JavaScript garbage collection.
  • Convert objects to primitive values.
  • Use property flags and descriptors.
  • Create property getters and setters.

Classes and Object-Oriented Techniques

  • Use modern class syntax.
  • Implement inheritance using the prototype chain.
  • Create static properties and methods.
  • Use private class members.
  • Extend built-in classes.
  • Use mixins for code reuse.

Iteration and Generators

  • Create generator functions.
  • Use asynchronous iteration.

Modern JavaScript Data Structures

  • Work with keyed collections such as Map, Set, WeakMap and WeakSet.
  • Understand ArrayBuffer and binary arrays.

Network Communication

  • Use the Fetch API.
  • Submit data using FormData.
  • Work with WebSocket connections.
  • Use URL objects.
  • Implement resumable file uploads.

JavaScript Modules

  • Create modules using export and import.
  • Use dynamic imports.
  • Structure applications using modules.

JavaScript and TypeScript

  • Understand why many projects use TypeScript.
  • Compare JavaScript and TypeScript.
  • Understand how TypeScript adds static typing.
  • Understand how TypeScript compiles to JavaScript.

Download the course outline

Download the Advanced JavaScript course outline in PDF format.

Your Java tip is on its way!

Check that incusdata.com is an approved sender, so that your Java tips don’t land up in the spam folder.

Our privacy policy means your data is safe. You can unsubscribe from these tips at any time.

Thank You

We're Excited!

Thank you for completing the form. We're excited that you have chosen to contact us about training. We will process the information as soon as we can, and we will do our best to contact you within 1 working day. (Please note that our offices are closed over weekends and public holidays.)

Don't Worry

Our privacy policy ensures your data is safe: Incus Data does not sell or otherwise distribute email addresses. We will not divulge your personal information to anyone unless specifically authorised by you.

If you need any further information, please contact us on tel: (27) 12-666-2020 or email info@incusdata.com

How can we help you?

Let us contact you about your training requirements. Just fill in a few details, and we’ll get right back to you.