Operator `??=` di JavaScript: Penugasan Default Nullish yang Mudah
1
min read .
Updated on
Operator ??=
di JavaScript adalah operator penugasan logika nullish yang menetapkan nilai hanya jika variabel bernilai null
atau undefined
.
1. Sintaks
variable ??= value;
- Menetapkan
value
hanya jikavariable
nullish (null
atauundefined
).
2. Contoh Dasar
let nama = null;
nama ??= 'Tamu';
console.log(nama); // 'Tamu'
3. Default pada Fungsi
function sapa(user) {
user ??= 'Stranger';
console.log(`Halo, ${user}!`);
}
sapa('Alice'); // Halo, Alice!
sapa(); // Halo, Stranger!
4. Properti Objek
let pengaturan = { tema: undefined, fontSize: 16 };
pengaturan.tema ??= 'Light';
console.log(pengaturan.tema); // Light
5. Perbedaan dengan Operator Lain
||=
→ Menetapkan jika variabel falsy (0
,''
,false
,null
,undefined
)&&=
→ Menetapkan jika variabel truthy??=
→ Menetapkan jika variabel null atau undefined saja
let jumlah = 0;
jumlah ||= 10; // 10 (karena 0 adalah falsy)
jumlah ??= 10; // 0 (karena 0 bukan nullish)
6. Dukungan Browser
Didukung di browser modern (Chrome, Firefox, Safari, Edge) dan ES2021+. Tidak didukung di Internet Explorer.
Kesimpulan
Operator ??=
sangat cocok untuk menetapkan nilai default hanya saat variabel bernilai null
atau undefined
, sehingga kode lebih bersih, ringkas, dan mudah diprediksi.