ECMA teklifi, kayıtları ve demetleri JavaScript'e getirecek

JavaScript, web geliştirme için popüler programlama dilini denetleyen standartlar kuruluşu ECMA International'dan önce bir teklif kapsamında kayıt ve tuple değer türleri kazanacaktı.

Kayıtlar ve tuplelar, JavaScript'e derinlemesine değişmez iki veri yapısı sunar: Recordnesne benzeri bir yapı ve Tupledizi benzeri bir yapı. JavaScript'in altında yatan standart olan ECMAScript'i yöneten ECMA Teknik Komitesi 39 ile planın bir taslağı.

Teklif durumları olan kayıtlar ve demetler yalnızca ilkelleri ve diğer kayıtları ve demetleri içerebilir. "Bileşik ilkeller" olarak düşünülebilirler. Ve tamamen ilkellere dayandıklarından, derinden değişmezler. Nesneler ve diziler gibi, kayıtlar ve tuplelar da teklif durumu, yapım, kullanım ve manipülasyon için rahat deyimleri destekler. Kimlik yerine içeriğe göre karşılaştırılırlar.

JavaScript motorları, dizelerin nasıl uygulandığına benzer şekilde, kayıtların ve demetlerin oluşturulması, manipülasyonu ve karşılaştırılması konusunda belirli optimizasyonlar gerçekleştirebilir. Kayıtlar ve demetler, TypeScript veya Flow gibi harici tür sistem üst kümeleriyle kullanılabilir ve anlaşılır olacak şekilde tasarlanmıştır.

Şu anda immutable.js gibi kullanıcı alanı kitaplıkları benzer kavramları uygulamaktadır. Karmaşıklık ve yeterli kullanım durumlarının olmaması nedeniyle, değişmez veri yapıları için önceki bir ECMA önerisi denendi, ancak terk edildi. Yeni teklif, aşağıdakiler gibi kullanıcı alanı kitaplıklarına göre kullanılabilirlik avantajları sunan önemli değişiklikler getirmektedir:

  • Kayıtlar ve kayıtlar bir hata ayıklayıcıda kolayca iç gözlemlenebilir.
  • Değişmez ve JS nesnelerini kullanan genel bir kitaplık yazmak için ek dallanma gerekmez.
  • Geliştiricilerin normal JS nesneleri ve değişmez yapılar arasında pahalı bir şekilde dönüşüm gerçekleştirebildiği kullanım durumlarından kaçınılır.

Kayıtlar ve kayıtlar, nesneler ve dizilerle birlikte iyi çalışır. Nesneler ve dizilerle aynı şekilde okunabilirler. Temel fark, derin değişmezlik ve özdeşlikten çok değere göre karşılaştırmaya odaklanır. Ayrıca, önerilen sözdizimi önemli kullanılarak ergonomisini geliştirir Recordve Tuplekod.

ECMAScript belirtiminin en son sürümü olan sürüm 2020, Haziran ayında kabul edildi. Modül yükleme ve yeni bir BigInttip gibi alanlarda yeteneklere sahipti .