Menu
CoddyTech

Kesetaraan Ketat vs Longgar

Termasuk bagian Dasar-Dasar dalam perjalanan JavaScript di Coddy. Pelajaran 16 dari 77.

Dalam JavaScript, ada dua jenis operator kesetaraan: kesetaraan longgar (==) dan kesetaraan ketat (===).

Kesetaraan longgar (==) memeriksa apakah dua nilai sama setelah melakukan pemaksaan tipe. Artinya, jika operand memiliki tipe yang berbeda, JavaScript akan mencoba mengonversinya ke tipe yang sama sebelum melakukan perbandingan.

Contohnya:

let b = 5 == "5";   // Bernilai true karena string "5" diubah menjadi angka 5 sebelum dibandingkan
let b = 0 == false; // Bernilai true karena nilai boolean false dikonversi menjadi angka 0 sebelum dibandingkan
let c = "" == false; // Bernilai true karena string kosong diubah menjadi angka 0 sebelum dibandingkan

Kesetaraan ketat (===), di sisi lain, memeriksa apakah dua nilai sama tanpa melakukan konversi tipe data apa pun. Jika operand memiliki tipe data yang berbeda, keduanya dianggap tidak sama.

Contohnya:

let b = 5 === "5";   // Bernilai false karena tidak ada konversi tipe, dan angka tidak sama dengan string
let b = 0 === false; // Bernilai false karena tidak ada konversi tipe, dan angka 0 tidak sama dengan nilai boolean false

Secara umum, sebaiknya gunakan kesetaraan ketat (===) dalam kebanyakan kasus untuk menghindari hasil yang tidak terduga akibat konversi tipe.

Demikian pula, ada juga operator ketidaksamaan longgar (!=) dan ketidaksamaan ketat (!==) yang bekerja dengan cara serupa, tetapi memeriksa ketidaksamaan, bukan kesamaan.

Ketidaksetaraan longgar (!=) memeriksa apakah dua nilai tidak sama setelah melakukan pemaksaan tipe, sedangkan ketidaksetaraan ketat (!==) memeriksa apakah dua nilai tidak sama tanpa melakukan konversi tipe.

challenge icon

Tantangan

Pemula

Kamu diberi kode dengan tiga variabel: a, b, dan c.

Tugasmu adalah melakukan perbandingan berikut dan mencetak hasilnya:

  1. Periksa apakah a sama dengan b secara longgar, lalu simpan hasilnya dalam d.
  2. Periksa apakah a sama dengan c secara ketat, lalu simpan hasilnya dalam e.
  3. Periksa apakah b tidak sama dengan c secara longgar, lalu simpan hasilnya dalam f.
  4. Periksa apakah a tidak sama dengan b secara ketat, lalu simpan hasilnya dalam g.

Gunakan variabel dan operator perbandingan yang diberikan untuk menyelesaikan tugas.

Coba sendiri

// Variabel yang diberikan
let a = 10
let b = "10"
let c = true

// Ketik kodemu di bawah ini


// Jangan ubah baris di bawah ini
console.log(`d = ${d}`)
console.log(`e = ${e}`)
console.log(`f = ${f}`)
console.log(`g = ${g}`)
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Compiler JavaScript online