Course info
Jul 20, 2017
1h 10m

When you think you're up-to-date with your ES6/ES2015 knowledge, you're wrong. In this course, Getting Started with ES2017/ES8, you'll upgrade your knowledge to ES2017, unofficially known as ES8 and, in the process, take a look at the small ES2016/ES7 release as well. This course will teach you the new async functions and the Shared ArrayBuffer together with atomics. You'll also learn new functions on the Object type that let you do reflection on types in a better way. You'll learn how working with strings has become slightly easier. The next versions of ES2016 and ES2017 are supported by browsers and by Node right now, so there's no need to wait! And in case you are confused by all these releases, in the first module the ECMAScript release process called TC39 is explained as well as the javascript-ECMAScript relationship. After watching this course, you'll be up and running with all the features of ES2017.

About the author
About the author

Roland is a Microsoft MVP enjoying a constant curiosity around new techniques in software development. His focus is on all things .Net and browser technologies.

More from the author
Getting Started with ASP.NET SignalR
1h 1m
May 16, 2019
Building GraphQL APIs with ASP.NET Core
1h 22m
Jan 17, 2019
Getting Started with ASP.NET Core SignalR
1h 11m
Jun 22, 2018
More courses by Roland Guijt
Section Introduction Transcripts
Section Introduction Transcripts

Course Overview
Hi everyone, my name is Roland Guijt, and welcome to my course, Getting Started with ES2017, AKA ES8. I am independent software developer, trainer, and speaker based in the Netherlands. If you think you're up to date with your ES2015, AKA ES6 knowledge, you're wrong. JavaScript is getting features like never before. The two next ECMAScript releases, ES2016 and ES2017, are final, and are already supported by browsers and Node. With E2016 as a starting point, you will upgrade your JavaScript knowledge to ES2017 by watching this course. Some of the major topics that we will cover include async functions, working with shared array buffers and atomics, the exponentiation operator, handy additions to the string type, and I'm also covering the ECMAScript release process and its relationship with JavaScript. Before beginning the course you should be familiar with the basics of JavaScript. Join me to learn this great new version of JavaScript here at Pluralsight.

Getting on the Right JavaScript Page
Hello, and welcome to this course about ES2017, also known as ES8. We're starting off in this module by looking at the structure of the course, and also what the prerequisites are. I'm also talking about who's in charge of the ECMAScript standard and how releases come to be. Finally, we'll take a look at the options you'll have to run code using the one of the newer ES versions in older browsers or in Node.

Array.prototype.includes and the Exponentiation Operator
I'm covering two JavaScript features in this module. Both are part of the ES2016 specification, which is also unofficially known as ES7. The first is the array. prototype. includes function, which is great to search for an item in an array. And the second one is the exponentiation operator. The two form the whole of the ES2016 specification. After the big ES2015, also known as ES6 release, the cadence of releases was changed to 1 per year, and only the mentioned 2 new features made it to the final specification. Let's start with the array. prototype. includes function in the next clip.

Shared Array Buffers and Atomics
As you will see, the ES2017 features, shared array buffers and atomics, are closely related. I'll first make sure we're on the same page for the topics web workers and array buffers in combination with typed arrays. You will need to gain or refresh that knowledge to fully understand shared array buffers and atomics.

Other New Language Features
I'm covering the remaining major ES2017 features in this module. You can now iterate over an object in new ways with Object. values and Object. entries. With getOwnPropertyDescriptors or descriptor you can get metadata about the properties of an object. PadStart and padEnd are useful prototype functions of string that let you pad one or more characters before or after an existing string. And trailing commas are in many cases now legal in literals and parameter lists, which has benefits.