ECMAScript 6 Development

ECMAScript 6 (ES6) is a major step forward in client-side web development. ES6 has full support for object-oriented programming, functional programming (via arrow functions), and modular development (via CommonJS modules). ES6 also introduces some extremely handy syntactic features such as destructuring, the spread operator, and generators.

This course takes a thorough look at all the new features in ES6, and also shows how to transpile ES6 into ES5 for compatibility with today's browsers.


3 days



  • Familiarity with HTML and CSS
  • Experience with earlier versions of JavaScript beneficial

What you'll learn

  • Arrow functions and other function enhancements
  • Destructuring
  • Array and object enhancements
  • Object-oriented programming using classes and inheritance
  • Iterables, iterators, and generators
  • API enhancements
  • Modules

Course details

Getting Started with ES6

  • Overview of ES6
  • Goals of ES6
  • Tool support

Core Features in ES6

  • Variables, scope, and string literals
  • Function enhancements
  • Arrow functions


  • What is destructuring
  • Array destructuring
  • Object destructuring
  • Destructuring techniques

Miscellaneous New APIs

  • Number and Math enhancements
  • String enhancements
  • Regular expression enhancements

Array Enhancements

  • Core Array enhancements
  • Typed arrays

Object Enhancements

  • Object literal enhancements
  • Symbols
  • New methods in Object


  • Defining classes in ES6
  • Encapsulation
  • Statics
  • Inheritance

Iterables, Iterators, and Generators

  • Introduction to iterables and iterators
  • Implementing iterable objects
  • Generators

ES6 Modules

  • Introduction to ES6 modules
  • Importing and exporting syntax
  • Additional techniques

Asynchronous JavaScript

  • Introduction to Promises
  • Using Promise objects
  • Example of Promises