ECMAScript 2021
Nomor versi JavaScript
Versi JS lama diNama berdasarkan angka: ES5 (2009) dan ES6 (2015).
Dari tahun 2016, versi di命名 berdasarkan tahun: ECMAScript 2016, 2017, 2018, 2019, ...
Fitur baru
Fitur baru di ES2021:
- Promise.any()
- Metode string replaceAll()
- Pemisah angka (_)
Fitur baru di ES2022:
- Metode array at()
- Metode string at()
- Ekspresi reguler /d
- Object.hasOwn()
- error.cause
- await import
- Metode dan field pribadi
- Pengumuman field klasse
Peringatan
Fitur ini relatif baru.
Browser yang lama mungkin memerlukan kode pengganti (Polyfill)
Metode ReplaceAll() string JavaScript
ES2021 memperkenalkan metode string replaceAll():
Contoh
text = text.replaceAll("Cats","Dogs"); text = text.replaceAll("cats","dogs");
Metode replaceAll() memungkinkan Anda menentukan ekspresi reguler daripada string yang akan diganti.
Jika parameter adalah ekspresi reguler, maka harus diatur tanda flag global (g
), jika tidak akan muncul TypeError.
Contoh
text = text.replaceAll(/Cats/g,"Dogs"); text = text.replaceAll(/cats/g,"dogs");
Petunjuk:ES2020 Memperkenalkan metode string matchAll().
Penanda pemisah angka JavaScript
ES2021 memperkenalkan penanda pemisah angka (_
) untuk membuat angka lebih mudah dibaca:
Contoh
const num = 1_000_000_000;
Penanda pemisah angka hanya untuk penggunaan visual.
Contoh
const num1 = 1_000_000_000; const num2 = 1000000000; (num1 === num2);
Penanda pemisah angka dapat ditempatkan di mana saja di antara angka:
Contoh
const num1 = 1_2_3_4_5;
Perhatian
Penanda pemisah angka tidak boleh muncul di awal atau akhir angka.
Dalam JavaScript, hanyaVariabelDapat dimulai dengan _.
Sejak Januari 2020, semua peramban modern mendukung penanda pemisah angka:
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 75 | Edge 79 | Firefox 74 | Safari 13.1 | Opera 67 |
Juni 2019 | Januari 2020 | Oktober 2019 | September 2019 | Juni 2019 |