JavaScript `||=`: Cara Simpel untuk Default Assignment
Sering banget saya nemu kasus di mana variabel belum diisi, tapi harus ada nilai default supaya kode nggak error. Nah, JavaScript punya operator ||=
yang bikin ini gampang. Intinya, kalau variabel falsy (0
, ''
, null
, undefined
, false
), dia bakal di-assign nilai baru. Kalau nggak, dia tetap aman.
Sintaks Dasar
variable ||= value;
Artinya: assign value
hanya kalau variable
falsy.
Contoh Sederhana
let name = '';
name ||= 'Guest';
console.log(name); // 'Guest'
Karena name
awalnya string kosong → falsy, jadi diisi 'Guest'
.
Default di Fungsi
function greet(user) {
user ||= 'Stranger';
console.log(`Hello, ${user}!`);
}
greet('Alice'); // Hello, Alice!
greet(); // Hello, Stranger!
Praktis banget, nggak perlu if (!user) user = 'Stranger'
.
Properti Objek
let settings = { theme: '', fontSize: 14 };
settings.theme ||= 'Light';
console.log(settings.theme); // Light
Kalau theme
kosong, otomatis diisi 'Light'
. Kalau sudah ada, nggak diubah.
Bedanya dengan Operator Lain
||
→ cuma nge-return right-hand side kalau left falsy, tanpa assign.&&=
→ assign cuma kalau left-hand side truthy.
let flag = false;
flag ||= true; // flag jadi true
flag &&= false; // cuma update kalau flag truthy
Dukungan Browser
Support di Chrome, Firefox, Safari, Edge, dan ES2021+. Kalau masih pakai IE, bakal error.
Kesimpulan
||=
bikin default assignment lebih ringkas dan readable. Cocok banget buat inisialisasi variabel atau properti objek kalau kemungkinan nilainya falsy. Gini deh, kode jadi lebih bersih tanpa repot pakai banyak if
.