ECMAScript 2017

JavaScript Version Numbers

Old ECMAScript versions was named by numbers: ES5 and ES6.

From 2016, versions are named by year: ES2016, 2018, 2020 ...

New Features in ECMAScript 2017

This chapter introduces the new features in ECMAScript 2017:

  • JavaScript String padding
  • JavaScript Object entries()
  • JavaScript Object values()
  • JavaScript async and await
  • Trailing Commas in Functions
  • JavaScript Object.getOwnPropertyDescriptors

ES 2017 is fully supported in all modern browsers since September 2017:

         

Chrome 57

Edge 15

Firefox 48

Safari 11

Opera 44

Mar 2017

Apr 2017

Aug 2016

Sep 2017

Mar 2017


JavaScript String Padding

ECMAScript 2017 added two string methods to JavaScript: padStart() and padEnd() to support padding at the beginning and at the end of a string.

Examples

let text = "5";
text = text.padStart(
4,0);

-

let text = "5";
text = text.padEnd(
4,0);

-

JavaScript string padding is supported in all modern browsers since April 2017:

         

Chrome 57

Edge 15

Firefox 48

Safari 10

Opera 44

Mar 2017

Apr 2017

Aug 2016

Sep 2016

Mar 2017


JavaScript Object Entries

ECMAScript 2017 added the Object.entries() method to objects.

Object.entries() returns an array of the key/value pairs in an object:

Example

const person = {
  firstName : 
"John",
  lastName : 
"Doe",
  age : 
50,
  eyeColor : 
"blue"
};

let text = Object.entries(person);

-

Object.entries() makes it simple to use objects in loops:

Example

const fruits = {Bananas:300, Oranges:200, Apples:500};

let text = "";
for (let [fruit, value] of Object.entries(fruits)) {
  text += fruit + 
": " + value + "<br>";
}

-

Object.entries() also makes it simple to convert objects to maps:

Example

const fruits = {Bananas:300, Oranges:200, Apples:500};

const myMap = new Map(Object.entries(fruits));

-

Object.entries() is supported in all modern browsers since March 2017:

         

Chrome 47

Edge 14

Firefox 47

Safari 10.1

Opera 41

Jun 2016

Aug 2016

Jun 2016

Mar 2017

Oct 2016


JavaScript Object Values

Object.values() are similar to Object.entries(), but returns a single dimension array of the object values:

Example

const person = {
  firstName : 
"John",
  lastName : 
"Doe",
  age : 
50,
  eyeColor : 
"blue"
};

let text = Object.values(person);

-

Object.values() is supported in all modern browsers since March 2017:

         

Chrome 54

Edge 14

Firefox 47

Login
ADS CODE