ECMAScript 2021
JavaScript sürüm numaraları
Eski JS sürümleri rakamlarla adlandırılıyor: ES5 (2009) ve ES6 (2015).
2016 yılından itibaren, sürümler yıllara göre adlandırılıyor: ECMAScript 2016, 2017, 2018, 2019,...
Yeni özellikler
ES2021'deki yeni özellikler:
- Promise.any()
- String methodu replaceAll()
- Sayı ayırıcı (_)
ES2022'deki yeni özellikler:
- Dizi methodu at()
- String methodu at()
- Düzen ifadesi /d
- Object.hasOwn()
- error.cause
- await import
- Özel yöntemler ve alanlar
- Sınıf alan açıklamaları
Uyarı
Bu özellikler nispeten yeni.
Daha eski tarayıcılar için alternatif kod (Polyfill) gerekebilir.
JavaScript string methodu ReplaceAll()
ES2021, string methodu replaceAll()yi tanıttı:
Örnek
text = text.replaceAll("KEDİ","KÖPEK"); text = text.replaceAll("kedi","köpek");
replaceAll() yöntemi, bir değiştirilecek dize yerine düzen ifadesi belirlemenizi sağlar.
Parametre bir düzen ise, genel işaret (gerekli olmalıdır.g
),aksi takdirde TypeError atılacak.
Örnek
text = text.replaceAll(/KEDİ/g,"KÖPEK"); text = text.replaceAll(/kedi/g,"köpek");
İpucu:}ES2020 matchAll() dizgi yöntemini tanıttı.
JavaScript Sayı Ayırıcıları (_)
ES2021, sayı ayırıcılarını (_
) sayıları daha okunabilir hale getirmek için kullanılır:
Örnek
const num = 1_000_000_000;
Sayı ayırıcıları yalnızca görsel amaçlıdır.
Örnek
const num1 = 1_000_000_000; const num2 = 1000000000; (num1 === num2);
Sayı ayırıcıları sayının herhangi bir yerinde konabilir:
Örnek
const num1 = 1_2_3_4_5;
Dikkat
Sayı ayırıcıları sayının başında veya sonunda出现不允许出现。
JavaScript'te, sadeceDeğişkenSayı ayırıcıları _ ile başlayabilir.
2020 Year 1'den itibaren, tüm modern tarayıcılar sayı ayırıcılarını desteklemektedir:
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 75 | Edge 79 | Firefox 74 | Safari 13.1 | Opera 67 |
2019 Year 6 | 2020 Year 1 | 2019 Year 10 | 2019 Year 9 | 2019 Year 6 |