Null Coalescing & Optional Chaining di JavaScript
Penjelasan
JavaScript modern punya dua operator yang memudahkan bekerja dengan nilai yang mungkin null/undefined: null coalescing (??) untuk memberi nilai default, dan optional chaining (?.) untuk mengakses property object bersarang tanpa error kalau salah satu bagiannya tidak ada.
Contoh Konsep
const nama = null;
console.log(nama ?? "Tamu"); // "Tamu", karena nama null
const user = { profil: { kota: "Jakarta" } };
console.log(user.profil?.kota); // "Jakarta"
console.log(user.alamat?.kota); // undefined, tidak error walau user.alamat tidak ada
Praktikum
Buat object const pengguna = { nama: "Budi" } (tanpa key profil). Pakai optional chaining untuk mengakses pengguna.profil?.kota, lalu pakai ?? untuk memberi nilai default "Tidak diketahui" kalau hasilnya undefined.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Optional chaining (?.) beda dari null coalescing (??): ?. mencegah error saat MENGAKSES property yang mungkin tidak ada, sedangkan ?? memberi NILAI DEFAULT kalau hasilnya null/undefined. Keduanya sering dipakai bersamaan.