giriiş
ES5 ve ES6, JavaScript de dahil olmak üzere birçok dilin temelini oluşturan bir betik dili standardı olan ECMAScript standardının farklı sürümlerini ifade eder. ES5'ten ES6'ya (ECMAScript 2015 olarak da bilinir) geçiş birçok değişiklik ve iyileştirmeyi beraberinde getirdi. İşte ikisi arasındaki karşılaştırma:
let .1 ve const (değişkenleri bildirme)
ES5: Değişkenleri tanımlamanın ana yolu, değişken Oldu.
ES6: giriiş izin vermek Blok tabanlı değişkenleri tanımlamak ve sabit Blok tabanlı sabit değişkenleri tanımlamak.
2. Şablon Metinleri
ES5: Dizeleri kullanarak + Birbirlerine bağlıydılar.
var name = "John";
var greeting = "Hello, " + name + "!";ES6: Dize desenleri tanıtıldı.
let name = "John";
let greeting = `Hello, ${name}!`;Ok Fonksiyonları .3
ES5:
function(x) {
return x * x;
}ES6: Fonksiyonların yazımında daha kısa bir gösterim sağlayan ok fonksiyonları tanıtıldı.
x => x * x;
4. Sınıflar
ES5: Sınıfların davranışlarını simüle etmek için prototipsel kalıtım kullanıldı.
ES6: Anahtar kelime sınıf Nesne yönelimli programlama için tanıtıldı.
5. Gelişmiş Nesne Literalleri
ES5: Nesneler anahtar-değer çiftleri ile tanımlanıyordu.
ES6: Nesneleri tanımlamak için daha kısa bir gösterim sağlar.
let name = "John";
let obj = {name}; // Equivalent to {name: name}6. Yapısallaştırma
ES5: Doğrudan bir yöntem yoktu.
ES6: Artık bir nesneden veya diziden birden fazla özelliği daha öz bir şekilde çıkarmak mümkün.
let person = { firstName: "John", lastName: "Doe" };
let { firstName, lastName } = person;7. Varsayılan değerler, Dinlenme ve Yayılma
ES5: Varsayılan, kalan veya spread değerlerinin yönetimi manuel olarak yapılıyordu.
ES6: Fonksiyon parametreleri için varsayılan değerler, parametre ...dinlenmek Argümanları ve operatörü toplamak için ...yaymak Bir diziyi veya nesneyi genişletmek için tanıtıldı.
8. Modüller
ES5: Yerel bir modül sistemi yoktu. Geliştiriciler CommonJS veya AMD gibi üçüncü taraf çözümler kullanıyordu.
ES6: Yerel modül sistemi kullanılarak içe aktarmak Ve ihracat Tanıtıldı.
9. Sözler
ES5: Asenkron işlemler için geri aramalar kullanıldı.
ES6: Asenkron operasyonların daha yapılandırılmış bir şekilde yönetilmesine yönelik vaatler sunuldu.
10. for-of döngüsü
ES5: Diziler üzerinde yineleme yapmak için döngüleri kullanın. için Veya her biri için Kullanıldı.
ES6: Yüzük için-için Tekrarlanabilir nesneler üzerinde tekrarlama yapmak için tanıtıldı.
Set, Harita, ZayıfKüme, ZayıfHarita 11
ES5: Doğrudan bir karşılığı yoktu.
ES6: Bu tür koleksiyonlar veri yönetimi amacıyla ortaya çıkmıştır.
12. Sembol türü
ES5: Böyle bir şey yoktu.
ES6: Tip Sembol Benzersiz tanımlayıcılar oluşturmak için tanıtıldı.
13. Dizi ve Nesne Yöntemleri
ES5: Sınırlı bir yöntem kümesi.
ES6: Yeni yöntemler gibi Dizi.from, Dizi., Nesne.ata Ve daha niceleri tanıtıldı.
14. Parametre Yönetimi
ES5: Nesneyi kullanan parametreler argümanlar Erişim izni verildi.
ES6: Parametre yönetimi için doğrudan destek dinlenmek, varsayılan Ve yaymak.
Sonuç
Bu üst düzey bir karşılaştırmadır. ES5'ten ES6'ya geçiş, JavaScript dilini önemli ölçüde zenginleştiren birçok değişiklik ve iyileştirme getirdi. Zamanla, sonraki sürümler (ES7/ES2016 ve sonrası gibi) dile daha fazla özellik ekledi.









