Perbandingan pada JavaScript terdiri dari operator perbandingan dan operator logika.
Operator Perbandingan
Operator perbandingan dipakai untuk membandingkan dua nilai. Sebagai contoh, misalkan nilai x = 5 maka operator perbandingan akan menghasilkan nilai seperti pada tabel di bawah ini.
Operator | Keterangan | Perbandingan | Hasil | Jalankan Contoh |
---|---|---|---|---|
== | perbandingan sama dengan | x == 8 | false | |
x == 5 | true | |||
x == “5” | true | |||
=== | operator sama dengan untuk object | x === 5 | true | |
x === “5” | false | |||
!= | perbandingan tidak sama dengan | x != 8 | true | |
!== | perbandingan tidak sama dengan untuk object | x !== 5 | false | |
x !== “5” | true | |||
x !== 8 | true | |||
> | perbandingan lebih besar | x > 8 | false | |
< | perbandingan lebih kecil | x < 8 | true | |
>= | perbandingan lebih besar atau sama dengan | x >= 8 | false | |
<= | perbandingan lebih kecil atau sama dengan | x <= 8 | true |
Aksi dapat dilakukan berdasarkan hasil perbandingan. Seperti contoh di bawah ini, apabila nilai variable age lebih kecil dari 18 maka isi nilai variable text menjadi Too young.
if (age < 18) text = "Too young";
Bahan Belajar Operator Perbandingan
Operator Logika
Operator logika digunakan untuk melakukan operasi terhadap dua nilai boolean. Sebagai contoh apabila x = 6 dan y = 3 maka operator logika akan menghasilkan nilai seperti pada tabel di bawah ini.
Operator | Keterangan | Contoh | Jalankan Contoh |
---|---|---|---|
&& | and | (x < 10 && y > 1) is true | |
|| | or | (x == 5 || y == 5) is false | |
! | not | !(x == y) is true |
Operator Ternary
Operator ternary digunakan untuk memberikan nilai suatu variable berdasarkan suatu kondisi.
variable = (kondisi) ? nilai1:nilai2
Apabila kondisi adalah true maka variable bernilai nilai1, apabila kondisi adalah false maka variable bernilai nilai2.
var voteable = (age < 18) ? "Too young":"Old enough";
Pada contoh di atas, nilai variable voteable adalah Too young apabila nilai variable age lebih kecil dari 18, nilai variable voteable adalah Old enough apabila nilai variable age lebih besar atau sama dengan 18.
Membandingkan Variable Berbeda Tipe
Nilai string akan dikonversikan menjadi angka apabila string tersebut dibandingkan dengan angka. String kosong (“”) akan bernilai 0. Nilai string yang tidak bisa dikonversikan menjadi angka akan bernilai NaN, NaN apabila dibandingkan dengan angka akan selalu menghasilkan nilai false.
Kasus | Nilai | Jalankan Contoh |
---|---|---|
2 < 12 | true | |
2 < “12” | true | |
2 < “John” | false | |
2 > “John” | false | |
2 == “John” | false | |
“2” < “12” | false | |
“2” > “12” | true | |
“2” == “12” | false |
Untuk menjamin hasil perbandingan yang benar, sebaiknya suatu variable dikonversikan terlebih dahulu ke tipe yang tepat. Contoh di bawah ini memperlihatkan variable age dikonversikan dulu menjadi angka sebelum dibandingkan dengan angka 18.
age = Number(age);
if (isNaN(age)) {
voteable = "Input is not a number";
} else {
voteable = (age < 18) ? "Too young" : "Old enough";
}
Tutorial sebelumnya : JavaScript Boolean
Tutorial setelahnya : Kondisi Dengan JavaScript
Semua Tutorial JavaScript : Tutorial JavaScript