ES7 Nedir? ECMAScript 2016 Nedir?

Sayfayı kopyala
💡 Özet (TL;DR):
- ES7 (ES2016) Nedir?: Haziran 2016'da yayınlanan ve JavaScript diline küçük ama oldukça pratik iki yeni özellik kazandıran 7. ECMAScript sürümüdür.
- Yenilikler: Üs alma operatörü (
**) ve dizi aramalarını kolaylaştıranArray.prototype.includes()fonksiyonu.- Önemi: ES6'daki devasa değişiklik fırtınasından sonra, komitenin her yıl daha küçük ve kararlı sürümler yayınlama stratejisinin ilk örneğidir.
ES7 (ECMAScript 2016), Haziran 2016'da yayınlanan 7. ECMAScript sürümüdür.
ES7 ile Değişen Yazım Standartları
| Özellik | ES7 Öncesi (ES5 / ES6) | ES7 ve Sonrası |
|---|---|---|
| Üs Alma (Exponentiation) | Math.pow(base, exponent) | base ** exponent |
| Dizide Eleman Arama | array.indexOf(item) !== -1 | array.includes(item) |
ES7 ile Yeni Neler Geldi?
ES7 ile birlikte JavaScript'e aşağıdaki yenilikler geldi:
- Exponentiation (üssel ifade) Operatörü (
**) Array.prototype.includes()
Diğer sürümlerle karşılaştırıldığında sayıca en az yenilik getiren ECMAScript sürümü ES7 oldu. Ancak bu özelliklerin ikisi de geliştirme süreçlerinde kod okunabilirliğini ciddi şekilde artırdı.
1. Exponentiation Operatörü
JavaScript, ES7 ile birlikte standart aritmetik ifadelere (+, -, *, /) ** operatörünü ekledi. Bu operatör soldaki sayının sağdaki sayı kadar üssünü almaya yarıyor. Yani 3 ** 2 = 9 (3'ün karesi) anlamına geliyor.
// ES7 öncesi yöntem
const oldWay = Math.pow(3, 2); // 9
// ES7 ve sonrası
const newWay = 3 ** 2; // 9
Eskiler bilir, biz bunu Math.pow() fonksiyonu ile yapardık. :)
2. Array.prototype.includes()
includes() fonksiyonu, bir dizi (array) içerisinde arama yapmayı kolaylaştıran ve geriye boolean (true/false) bir değer dönen oldukça faydalı bir özelliktir.
const students = ["Ali", "Veli", "Ayşe", "Fatma", "Hayriye"];
// ES7 öncesinde arama yapmak için indexOf kullanılırdı
const hasAyşeOld = students.indexOf("Ayşe") !== -1; // true
// ES7 ve sonrası
console.log(students.includes("Ayşe")); // true
console.log(students.includes("Evren")); // false
Ne çabuk bitti. Diğer ECMAScript standartlarını uzun uzun yazmaya alıştığım için ES7 çok kısa geldi ama ES6 ve ES5 acısını çıkartacaktır diye düşünüyorum. :)
Bu Yazıda Yapılan Değişiklikler
- 21.06.2026: Kod örneğindeki tırnak kapatma hatası (sözdizimi hatası) düzeltildi.
varyerineconstkullanımı getirildi, imla ve marka adları (JavaScript, ECMAScript) standardize edildi. ES7 karşılaştırma tablosu eklendi. - 11.05.2022: Yazı özeti düzenlendi.
