Tutorial Belajar JavaScript Bagian 22 : Operator Logika & Sama Dengan di JavaScript

0
568

Pada tutorial sebelumnya,kita sudah mempelajari Tutorial Belajar JavaScript Bagian 21 : Operator Logika di JavaScript. Dalam tutorial ini, kita akan belajar tentang operator sama dengan digabung dengan operator logika JavaScript, termasuk operator logika OR dan sama dengan (||=), operator logika AND dan sama dengan (&&=), dan operator nullish dan sama dengan (??=).

ES2021 memperkenalkan 3 operator sama dengan dan logika termasuk:

  • Operator Logika OR dan sama dengan (||=)
  • Operator logika AND dan sama dengan (&&=)
  • Operator logika nullish dan sama dengan (??=)

Tabel berikut menunjukkan operator logika dan sama dengan yang setara :

Operator Logika Sama DenganOperator Logika
x ||= yx || (x = y)
x &&= yx && (x = y)
x ??= yx ?? (x = y);

Operator logika OR dan  sama dengan

Operator logika OR dan sama dengan (||=) menerima 2 operan dan menugaskan operan kanan ke operan kiri jika operan kiri salah :

x ||= y

Dalam sintaks ini, operator ||= hanya menugaskan y ke x jika x salah. Sebagai contoh :

let judul;
judul ||= 'tanpa judul';

console.log(judul);

Hasil :

tanpa judul

Dalam contoh ini, variabel judul tidak ditentukan, oleh karena itu, nilainya menjadi false. Karena judul false, operator ||= menetapkan ‘tanpa judul’ ke judul. Output menunjukkan nilai tanpa judul seperti yang diharapkan.

Lihat contoh lain :

let judul = 'JavaScript Hebat';
judul ||= 'tanpa judul';

console.log(judul);

Hasil :

'JavaScript Keren'

Dalam contoh ini, judulnya adalah ‘JavaScript Hebat’ jadi nilainya adalah true. Oleh karena itu, operator logika OR dan sama dengan (||=) tidak menetapkan string ‘tanpa judul’ ke variabel judul.

Operator logika OR dan sama dengan :

x ||= y

Setara dengan pernyataan berikut yang menggunakan operator logika OR :

x || (x = y)

Seperti operator logika OR, logika OR dan sama dengan juga memiliki hubungan pendek. Ini berarti bahwa operator logika OR dan sama dengan hanya melakukan sama dengan ketika x bernilai false.

Contoh berikut menggunakan operator logika dan sama dengan untuk menampilkan pesan default jika elemen hasil pencarian kosong:

document.querySelector(‘.search-result’).textContent ||= ‘Maaf! Tidak ada hasil yang ditemukan’;

Operator logika AND dan sama dengan

Operator logika AND dan sama dengan hanya menugaskan y ke x jika x bernilai true :

x &&= y;

Operator logika AND dan sama dengan juga melakukan hubungan pendek. Itu artinya :

x &&= y;

setara dengan :

x && (x = y);

Contoh berikut menggunakan operator logika AND dan sama dengan untuk mengubah nama belakang object orang jika nama belakangnya benar :

let orang = {
     namaDepan: 'Jane',
     namaBelakang: 'Doe',
};
orang.namaBelakang &&= 'Smith';

console.log(orang);

Hasil :

{namaDepan: 'Jane', namaBelakang: 'Smith'}

Operator logika nullish dan sama dengan

Operator null dan sama dengan hanya menugaskan y ke x jika x adalah nol atau tidak terdefinisi (undefined) :

x ??= y;

Ini setara dengan pernyataan berikut yang menggunakan operator penggabungan nullish :

x ?? (x = y);

Contoh berikut menggunakan operator sama dengan penggabungan nullish untuk menambahkan properti yang hilang ke object :

let pengguna = {
     namaPengguna: 'Satoshi'
};
pengguna.nickname ??= 'anonim';

console.log(pengguna);

Hasil :

{namaPengguna: 'Satoshi', nickname:'anonim'}

Dalam contoh ini, user.nickname tidak ditentukan, oleh karena itu, nullish. Operator sama dengan penggabungan nullish menetapkan string ‘anonim’ ke properti user.nickname.

Tabel berikut mengilustrasikan cara kerja operator logika dan sama dengan :

Kesimpulan

  • Operator logika OR dan sama dengan (x ||= y) hanya menugaskan y ke x jika x bernilai false.
  • Operator logika AND dan sama dengan (x &&= y) hanya menugaskan y ke x jika x true.
  • Operator nullish dan sama dengan (x ??= y) operator hanya menugaskan y ke x jika x adalah nullish.

Itu dia penjelasan tentang operator logika dan sama dengan. Semoga tutorial ini bisa membantu Anda memahami penggunaan operator logika dan sama dengan di JavaScript.

TINGGALKAN KOMENTAR

Silakan masukkan komentar anda!
Silakan masukkan nama Anda di sini

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.