Perbandingan dan operator logika digunakan untuk menguji true atau false .
Operator perbandingan
operator perbandingan yang digunakan dalam laporan logis untuk menentukan kesetaraan atau perbedaan antara variabel atau nilai-nilai.
Mengingat bahwa x = 5 , tabel di bawah menjelaskan operator perbandingan:
Operator | Deskripsi | Perbandingan | Pengembalian | Cobalah |
---|---|---|---|---|
== | sama dengan | x == 8 | false | Cobalah " |
x == 5 | true | Cobalah " | ||
x == "5" | true | Cobalah " | ||
=== | nilai yang sama dan jenis yang sama | x === 5 | true | Cobalah " |
x === "5" | false | Cobalah " | ||
!= | tidak sama | x != 8 | true | Cobalah " |
!== | nilai tidak sama atau jenis tidak sama | x !== 5 | false | Cobalah " |
x !== "5" | true | Cobalah " | ||
x !== 8 | true | Cobalah " | ||
> | lebih besar dari | x > 8 | false | Cobalah " |
< | kurang dari | x < 8 | true | Cobalah " |
>= | lebih dari atau sama dengan | x >= 8 | false | Cobalah " |
<= | kurang dari atau sama dengan | x <= 8 | true | Cobalah " |
Bagaimana Apakah bisa digunakan
operator perbandingan dapat digunakan dalam pernyataan bersyarat untuk membandingkan nilai-nilai dan mengambil tindakan tergantung pada hasil:
if (age < 18) text = "Too young";
Anda akan belajar lebih banyak tentang penggunaan pernyataan bersyarat pada bab selanjutnya dari tutorial ini.
Operator logis
operator logika digunakan untuk menentukan logika antara variabel atau nilai-nilai.
Mengingat bahwa x = 6 dan y = 3 , tabel di bawah menjelaskan operator logika:
Operator | Deskripsi | Contoh | Cobalah |
---|---|---|---|
&& | and | (x < 10 && y > 1) is true | Cobalah " |
|| | or | (x == 5 || y == 5) is false | Cobalah " |
! | not | !(x == y) is true | Cobalah " |
Conditional (Ternary) Operator
JavaScript juga mengandung operator kondisional yang memberikan nilai pada sebuah variabel didasarkan pada beberapa kondisi.
Sintaksis
variablename = ( condition ) ? value1 : value2
Contoh
var
voteable = (age < 18) ? "Too young":"Old enough";
Cobalah sendiri " Jika usia variabel adalah nilai di bawah 18, nilai voteable variabel akan "Terlalu muda", jika nilai voteable akan "cukup tua".
Membandingkan Berbagai Jenis
Membandingkan data dari berbagai jenis dapat memberikan hasil yang tidak diharapkan.
Ketika membandingkan string dengan angka, JavaScript akan mengkonversi string ke nomor ketika melakukan perbandingan. String kosong mengkonversi ke 0. Sebuah string non-numerik mengkonversi ke NaN yang selalu salah.
Kasus | Nilai | Mencoba |
---|---|---|
2 < 12 | true | Cobalah " |
2 < "12" | true | Cobalah " |
2 < "John" | false | Cobalah " |
2 > "John" | false | Cobalah " |
2 == "John" | false | Cobalah " |
"2" < "12" | false | Cobalah " |
"2" > "12" | true | Cobalah " |
"2" == "12" | false | Cobalah " |
Ketika membandingkan dua string, "2" akan lebih besar dari "12", karena (menurut abjad) 1 kurang dari 2.
Untuk mengamankan hasil yang tepat, variabel harus dikonversi ke jenis yang tepat sebelum perbandingan:
age = Number(age);
if (isNaN(age)) {
voteable = "Error in input";
} else {
voteable = (age < 18) ? "Too young" : "Old enough";
}
Cobalah sendiri " JavaScript Bitwise Operator
operator bit bekerja pada nomor 32-bit.
Setiap operan numerik dalam operasi diubah menjadi nomor 32-bit.
Hasilnya dikonversi kembali ke nomor JavaScript.
Operator | Deskripsi | Contoh | Sama dengan | Hasil | Desimal |
---|---|---|---|---|---|
& | AND | x = 5 & 1 | 0101 & 0001 | 0001 | 1 |
| | OR | x = 5 | 1 | 0101 | 0001 | 0101 | 5 |
~ | NOT | x = ~ 5 | ~0101 | 1010 | 10 |
^ | XOR | x = 5 ^ 1 | 0101 ^ 0001 | 0100 | 4 |
<< | Left shift | x = 5 << 1 | 0101 << 1 | 1010 | 10 |
>> | Right shift | x = 5 >> 1 | 0101 >> 1 | 0010 | 2 |
Tabel di atas menggunakan 4 bit contoh unsigned. Tapi JavaScript menggunakan 32-bit nomor ditandatangani.
Karena itu, dalam JavaScript, ~ 5 tidak akan kembali 10. Ini akan kembali -6:
~ 00000000000000000000000000000101 akan kembali 11111111111111111111111111111010
Uji Diri dengan Latihan!
Latihan 1 » Latihan 2» Latihan 3 » Latihan 4» Latihan 5 » Latihan 6»