ECMAScript 2017

JavaScript adlandırma anlaşmaları ES1, ES2, ES3, ES5 ve ES6 ile başlamıştır.

Ancak, ECMAScript 2016 ve 2017 ES7 ve ES8 olarak adlandırılmamıştır.

2016 yılından beri, yeni sürümler yıllara göre adlandırılmaktadır (ECMAScript 2016/2017/2018).

ECMAScript 2017'deki yeni özellikler

Bu bölüm, ECMAScript 2017'nin yeni özelliklerini tanıtmaktadır:

  • JavaScript dizge doldurma
  • JavaScript Object.entries
  • JavaScript Object.values
  • JavaScript asenkron fonksiyon
  • JavaScript paylaşılan bellek

JavaScript dizge doldurma

ECMAScript 2017, iki String yöntemi ekledi:padStart ve padEnddizge başında ve sonunda doldurma desteklemek için.

örnek

let str = "5";
str = str.padStart(4,0);
// Sonuç: 0005

Try It Yourself

örnek

let str = "5";
str = str.padEnd(4,0);
// Sonuç: 5000

Try It Yourself

Internet Explorer dize doldurma desteklememektedir.

Firefox ve Safari ilk destekleyen JavaScript dize doldurma tarayıcılarıdır:

Chrome IE Firefox Safari Opera
Chrome 57 Edge 15 Firefox 48 Safari 10 Opera 44
March 2017 April 2017 2016 Yılı Ağustos 2016 Yılı Eylül March 2017

JavaScript nesne girişleri ekledi

ECMAScript 2017 nesnelere yeni Object.entries yöntemi.

Object.entries() yöntemi nesnelerdeki anahtar/değer çiftlerinin dizisini döndürür:

örnek

const person = {
  firstName : "Bill",
  lastName : "Gates",
  age : 50,
  eyeColor : "mavi"
};
document.getElementById("demo").innerHTML = Object.entries(person);

Try It Yourself

Object.entries() nesneleri döngülerde kullanmayı kolaylaştırır:

örnek

const fruits = {Bananas:300, Oranges:200, Apples:500};
let text = "";
for (let [fruit, value] of Object.entries(fruits)) {
text += fruit + ": " + value + "
";
}

Try It Yourself

Object.entries() nesneleri haritalara dönüştürmeyi kolaylaştırır:

örnek

const fruits = {Bananas:300, Oranges:200, Apples:500};
const myMap = new Map(Object.entries(fruits));

Try It Yourself

Chrome ve Firefox ilk destekleyenlerdir Object.entries tarayıcıları:

Chrome IE Firefox Safari Opera
Chrome 47 Edge 14 Firefox 47 Safari 10.1 Opera 41
2016 Yılı Haziran 2016 Yılı Ağustos 2016 Yılı Haziran March 2017 October 2016

JavaScript nesne değerleri

Object.values benzer Object.entriesama tek boyutlu bir nesne değeri dizisi döndürür:

örnek

const person = {
  firstName : "Bill",
  lastName : "Gates",
  age : 50,
  eyeColor : "mavi"
};
document.getElementById("demo").innerHTML = Object.values(person);

Try It Yourself

Firefox ve Chrome ilk destekleyenlerdir Object.values tarayıcıları:

Chrome IE Firefox Safari Opera
Chrome 54 Edge 14 Firefox 47 Safari 10.1 Opera 41
October 2016 2016 Yılı Ağustos 2016 Yılı Haziran March 2017 October 2016

JavaScript Async Functions

Timeout Waiting

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 are the first browsers to support asynchronous JavaScript functions:

Chrome IE Firefox Safari Opera
Chrome 55 Edge 15 Firefox 52 Safari 11 Opera 42
December 2016 April 2017 March 2017 September 2017 December 2016