Web Age Solutions Inc
Providing Technology Training and Mentoring For Modern Technology Adoption
Web Age Aniversary Logo
US Inquiries / 1.877.517.6540
Canadian Inquiries / 1.877.812.8887
Course #:WA2488

JavaScript Changes with ECMAScript 2015 Training

Courseware: Available for sale

This JavaScript training focuses on the changes introduced in the ECMAScript 2015 specification.  Although JavaScript syntax had not changed significantly in quite a while, this changed in summer 2015 when the ECMAScript 2015 specification was released.  Also called ECMAScript 6, or simply ES 6, this change introduces several advanced features and new options for common programming JavaScript.  In addition to covering the changes in the ECMAScript 2015 specification, the course provides a brief introduction to Node.js and AngularJS, two popular JavaScript frameworks that are incorporating the changes of ES 6.


The course covers the following key areas of ECMAScript 2015:

  • Major Syntax Changes in ECMAScript 2015
  • Iteration and Symbols
  • Major API Changes and Additions
  • JavaScript Classes
  • Asynchronous Programming With Promises
  • Introduction to Node.js
  • Introduction to AngularJS

What you will learn

Students will complete several lab exercises to apply the techniques covered in discussion and printed materials. After completing this class developers will be able to understand the differences introduced with the ECMAScript 2015 specification.


Developers, Web Designers.


Some basic HTML and JavaScript experience is required.  Knowledge of an object-oriented programming language is helpful but not required.


One day

Outline of JavaScript Changes with ECMAScript 2015 Training

Chapter 1. Introduction to ECMAScript 2015

  • Overview of ECMAScript
  • ECMAScript History
  • Features of ECMAScript 2015
  • Using ECMAScript 2015
  • Using ECMAScript 2015 With Browsers
  • Transpiling
  • Summary

Chapter 2. Major Syntax Changes in ECMAScript 2015

  • Major Syntax Changes
  • let and const
  • Variable Scope
  • Shadowing Variables
  • Arrow Functions
  • Arrow Functions As Parameters
  • Using 'this' Within Arrow Functions
  • Template Literals
  • Spread Operator
  • Rest Parameter
  • Binary and Octal Literals
  • Summary

Chapter 3. Iteration and Symbols

  • Symbols and New Iteration Features
  • Symbols
  • Using Symbols
  • Accessing Symbol Properties
  • Built-in Symbols
  • New Iteration Protocols
  • Implementing Iterators and Iterables
  • Using an Iterator: next or 'for...of' Loop
  • Generator Functions
  • Generator Example
  • Controlling Generator Execution - next(value)
  • Controlling Generator Execution - return(value)
  • Controlling Generator Execution - throw(exception)
  • Generator Recursion With 'yield*'
  • Tail Call Optimization
  • Summary

Chapter 4. Major API Changes and Additions

  • Major API Changes and Additions
  • New String Methods
  • Number API Changes
  • Numeric Rounding
  • New Math Methods
  • Array API Changes
  • New Array Instance Methods
  • New Collections
  • Creating Maps and Sets
  • Map and Set Methods
  • Summary

Chapter 5. JavaScript Classes

  • JavaScript Object Oriented Model
  • JavaScript Inheritance
  • Problems With Typical JavaScript OO Code
  • ES6 Classes
  • Declaring Classes
  • Declaring Instance Methods
  • Accessor Methods
  • Static Methods
  • Inheritance With Classes
  • Summary

Chapter 6. Asynchronous Programming With Promise

  • Typical Asynchronous Programming
  • Using Callbacks
  • Problems With Traditional Asynchronous Code
  • Promises
  • Creating a Promise
  • Example Promise
  • Creating a Promise From a Value
  • Consuming a Promise
  • Alternate Ways to Consume a Promise
  • Promise State
  • Chaining Promises
  • Composing Multiple Promises
  • Summary

Chapter 7. Introduction to Node.js

  • What is Node.js?
  • Application of Node.js
  • Installing Node.js and NPM
  • "Hello, Node World!"
  • How it Works
  • Built on JavaScript – benefits
  • Traditional Server-Side I/O Model
  • Disadvantages of the traditional Approach
  • Event-Driven, Non-Blocking I/O
  • Concurrency
  • Using Node Package Manager (NPM)
  • Express
  • Summary

Chapter 8. Introduction to AngularJS

  • What is AngularJS?
  • Why AngularJS?
  • Scope and Goal of AngularJS
  • Using AngularJS
  • A Very Simple AngularJS Application
  • Building Blocks of an AngularJS Application
  • Use of Model View Controller (MVC) Pattern
  • A Simple MVC Application
  • The View
  • The Controller
  • Data Binding
  • Basics of Dependency Injection (DI)
  • Other Client Side MVC Frameworks
  • Summary

Lab Exercises

Lab 1. ECMAScript 2015 Language Features
Lab 2. Iteration Features
Lab 3. Work With New APIs
Lab 4. Use Classes
Lab 5. Use Promise API

We regularly offer classes in these and other cities. Atlanta, Austin, Baltimore, Calgary, Chicago, Cleveland, Dallas, Denver, Detroit, Houston, Jacksonville, Miami, Montreal, New York City, Orlando, Ottawa, Philadelphia, Phoenix, Pittsburgh, Seattle, Toronto, Vancouver, Washington DC.
US Inquiries / 1.877.517.6540
Canadian Inquiries / 1.877.812.8887