ECMAScript 2017

JavaScript is the world's most popular programming language.
JavaScript is the programming language of the Web.
JavaScript is easy to learn.
This tutorial will teach you JavaScript from basic to advanced.
Post Reply
Guest

ECMAScript 2017

Post by Guest »

ECMAScript 2017


JavaScript Version Numbers
Old JS versions are named by numbers: ES5 (2009) and ES6 (2015).
From 2016, versions are named by year: ECMAScript 2016, 2017, 2018, 2019, ...

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
JavaScript Object.getOwnPropertyDescriptors



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);

Try it Yourself »

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

Try it Yourself »

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);

Try it Yourself »

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>";
}

Try it Yourself »

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));

Try it Yourself »

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);

Try it Yourself »

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










Chrome 54
Edge 14
Firefox 47
Safari 10.1
Opera 41


Oct 2016
Aug 2016
Jun 2016
Mar 2017
Oct 2016











JavaScript Async Functions

Waiting for a Timeout

async function myDisplay() {
  let myPromise = new Promise(function(myResolve, myReject) {
    setTimeout(function() { myResolve("I love You !!"); }, 3000);
  });
  document.getElementById("demo").innerHTML = await myPromise;}
myDisplay();


Try it Yourself »


Firefox and Chrome were the first browsers with support for async JavaScript functions:










Chrome 55
Edge 15
Firefox 52
Safari 11
Opera 42


Dec 2016
Apr 2017
Mar 2017
Sep 2017
Dec 2016

















+1

Reference: https://www.w3schools.com/js/js_2017.asp
Post Reply