← JavaScript34 / 69
Nullish coalescing (??)
?? mengembalikan sisi kanan hanya jika sisi kiri null atau undefined. Bedanya dengan || sangat penting: 0 || 10 menghasilkan 10 (karena 0 falsy), sedangkan 0 ?? 10 menghasilkan 0. Untuk nilai yang boleh nol — jumlah stok, harga diskon, skor — ?? adalah pilihan yang benar.
👀 Contoh dulu
const diskon = 0; const nama = null; console.log(diskon ?? 100); // 0 bukan null → pakai 0 console.log(diskon || 100); // 0 falsy → ditimpa jadi 100 console.log(nama ?? 'Tamu'); // null → pakai fallback
Hasilnya: 0 100 Tamu
💡 ?? hanya peduli null/undefined. || peduli semua nilai falsy (termasuk 0, '', false) — sering keliru untuk angka.
📝 Sekarang giliranmu
Tampilkan hasil stok ?? 10 dan stok || 10 untuk const stok = 0, lalu bandingkan hasilnya di output.
Preview