Perbedaan Operator || (Logical OR) dengan ?? (Nullish Coalescing Operator)

Agung Dirgantara
By -
1 minute read
0

Operator || dan ?? dalam JavaScript memiliki perbedaan utama terkait cara mereka menangani nilai-nilai tertentu. Berikut adalah perbedaan antara keduanya:

1. Operator || (Logical OR):

  • Digunakan untuk short-circuit evaluation dengan memeriksa dua nilai. Jika nilai pertama adalah falsy (misalnya false, 0, null, undefined, NaN, ""), maka akan mengembalikan nilai kedua.
  • Biasanya digunakan untuk memberikan nilai default saat nilai pertama tidak diharapkan.

    Contoh:

2. Operator ?? (Nullish Coalescing Operator):

  • Digunakan untuk memberikan nilai default hanya jika nilai pertama adalah null atau undefined. Berbeda dengan ||, operator ini tidak menganggap nilai seperti 0, false, atau "" sebagai falsy.
  • Ini berguna ketika nilai 0, false, atau string kosong ("") dianggap valid dan tidak ingin diganti dengan nilai default.

    Contoh:

    Perbedaan Utama:

  • ||: Mengembalikan nilai kedua jika yang pertama adalah falsy (termasuk 0, false, "", null, undefined, dll.).
  • ??: Mengembalikan nilai kedua hanya jika yang pertama adalah null atau undefined (tidak mengubah 0, false, atau "").

Contoh:

Kapan Menggunakan:

  • Gunakan || ketika ingin mengganti semua nilai falsy dengan nilai default.
  • Gunakan ?? ketika hanya ingin mengganti null atau undefined dengan nilai default.

Posting Komentar

0Komentar

Posting Komentar (0)