Operator di JavaScript

Operator di JavaScript

Dalam artikel ini, kami akan menjelaskan operator di JavaScript.

YouTube Video

Operator di JavaScript

Operator di JavaScript adalah simbol atau kata kunci yang digunakan untuk melakukan perhitungan atau perbandingan pada angka dan variabel. Ada berbagai jenis operator, masing-masing melakukan operasi yang berbeda. Berikut ini adalah beberapa operator utama yang dirangkum:.

Operator Aritmatika

Operator aritmatika JavaScript meliputi berikut ini:.

Operator Deskripsi Contoh Hasil
+ Penjumlahan 5 + 2 7
- Pengurangan 5 - 2 3
* Perkalian 5 * 2 10
/ Pembagian 5 / 2 2.5
% Modulus (Sisa bagi) 5 % 2 1
++ Inkrementasi (Menambah 1) let x = 5; x++ 6
-- Dekrementasi (Mengurangi 1) let x = 5; x-- 4
 1let a = 10; // Initialize variable 'a' with the value 10
 2let b = 3;  // Initialize variable 'b' with the value 3
 3
 4// Perform and display arithmetic operations between 'a' and 'b'
 5console.log("Addition (a + b):      ", a + b); // 13
 6console.log("Subtraction (a - b):   ", a - b); // 7
 7console.log("Multiplication (a * b):", a * b); // 30
 8console.log("Division (a / b):      ", a / b); // 3.333...
 9console.log("Modulus (a % b):       ", a % b); // 1
10
11// Demonstrate post-increment operation on 'a'
12// Output the current value of 'a' (10), then increment
13console.log("Post-increment (a++):  ", a++);
14// Display the incremented value of 'a' (11)
15console.log("Value of 'a' after increment:", a);
16
17// Demonstrate pre-increment operation on 'a'
18// Increment 'a' first (12) then output
19console.log("Pre-increment (++a):   ", ++a);
20
21// Demonstrate post-decrement operation on 'a'
22// Output the current value of 'a' (12), then decrement
23console.log("Post-decrement (a--):  ", a--);
24// Display the decremented value of 'a' (11)
25console.log("Value of 'a' after decrement:", a);
26
27// Demonstrate pre-decrement operation on 'a'
28// Decrement 'a' first (10) then output
29console.log("Pre-decrement (--a):   ", --a);

Operator aritmatika melakukan operasi matematika dasar pada angka. Selain penjumlahan dan pengurangan, Anda juga dapat melakukan operasi seperti modulus, inkrementasi, dan dekrementasi. Perhatikan bahwa nilai yang dikembalikan oleh inkrementasi atau dekrementasi berbeda tergantung pada apakah operator ditempatkan sebelum atau sesudah operan.

Operator Penugasan

Operator penugasan JavaScript meliputi berikut ini:.

Operator Deskripsi Contoh Hasil
= Penugasan x = 5 x diberi nilai 5
+= Penugasan penjumlahan x += 5 x = x + 5
-= Penugasan pengurangan x -= 5 x = x - 5
*= Penugasan perkalian x *= 5 x = x * 5
/= Penugasan pembagian x /= 5 x = x / 5
%= Penugasan modulus x %= 5 x = x % 5
 1let x = 10;
 2
 3x += 5;  // x = x + 5, so x becomes 15
 4console.log('After x += 5 : ', x);  // 15
 5
 6x -= 10;
 7console.log('After x -= 10 : ', x);  // 5
 8
 9x *= 3;
10console.log('After x *= 3 : ', x);  // 15
11
12x /= 3;
13console.log('After x /= 3 : ', x);  // 5
14
15x %= 2;
16console.log('After x %= 2 : ', x);  // 1

Operator penugasan digunakan untuk memberikan nilai ke variabel atau memperbarui nilai variabel. Selain penugasan biasa, ada operator penugasan untuk operasi aritmatika seperti penjumlahan dan modulus.

Operator Perbandingan

Operator perbandingan JavaScript meliputi berikut ini:.

Operator Deskripsi Contoh Hasil
== Sama dengan 5 == "5" true
=== Benar-benar Sama (Tipe dan nilai keduanya sama) 5 === "5" false
!= Tidak Sama Dengan 5 != "5" false
!== Benar-benar Tidak Sama 5 !== "5" true
> Lebih Besar Dari 5 > 2 true
< Lebih Kecil Dari 5 < 2 false
>= Lebih Besar Dari atau Sama Dengan 5 >= 5 true
<= Lebih Kecil Dari atau Sama Dengan 5 <= 4 false
 1console.log("5 == '5' evaluates to:", 5 == "5");   // true (because the values are equal)
 2console.log("5 === '5' evaluates to:", 5 === "5"); // false (because the types are different)
 3console.log("5 != '5' evaluates to:", 5 != "5");   // false
 4console.log("5 !== '5' evaluates to:", 5 !== "5"); // true
 5console.log("5 > 2 evaluates to:", 5 > 2);         // true
 6console.log("5 < 2 evaluates to:", 5 < 2);         // false
 7console.log("5 >= 5 evaluates to:", 5 >= 5);       // true
 8console.log("5 <= 4 evaluates to:", 5 <= 4);       // false
 9console.log("5 >= '5' evaluates to:", 5 >= "5");   // true
10console.log("5 <= '5' evaluates to:", 5 <= "5");   // true
  • Operator perbandingan membandingkan nilai dan mengembalikan true atau false.
  • Operator kesetaraan (==) secara otomatis mengonversi tipe yang berbeda jika diperlukan sebelum melakukan perbandingan. Operator kesetaraan ketat (===) tidak melakukan konversi tipe selama perbandingan dan hanya mengembalikan true jika kedua nilai memiliki tipe yang sama dan nilai yang sama. Menggunakan operator kesetaraan ketat (===) membantu mencegah bug yang disebabkan oleh konversi tipe yang tidak diinginkan, sehingga disarankan untuk menggunakannya secara prioritas.

Operator Logika

Operator logika JavaScript meliputi berikut ini:.

Operator Deskripsi Contoh Hasil
&& DAN (True jika kedua kondisi true) true && false false
|| ATAU (True jika salah satu kondisi true) true || false true
! TIDAK (Mengubah true menjadi false dan false menjadi true) !true false
1let a = true;
2let b = false;
3
4console.log("a && b evaluates to:", a && b);  // false
5console.log("a || b evaluates to:", a || b);  // true
6console.log("!a evaluates to:", !a);          // false

Operator logika digunakan ketika ada banyak kondisi, untuk mengevaluasi kombinasi kondisi.

Prioritas Operator Logika

Dalam JavaScript, operator logika umumnya dievaluasi dengan urutan NOT terlebih dahulu, diikuti oleh AND, dan akhirnya OR.

NOT memiliki prioritas tertinggi

NOT adalah operator unary dan dievaluasi dengan prioritas tertinggi.

1console.log(!true || false);  // false
AND memiliki prioritas lebih tinggi dibandingkan OR

AND memiliki prioritas lebih tinggi dibandingkan OR, sehingga bagian AND dievaluasi terlebih dahulu.

1console.log(true || false && false);  // true

Dengan cara ini, bagian AND (&&) dievaluasi terlebih dahulu, dan hasilnya diteruskan ke OR (||).

AND dan OR melakukan evaluasi short-circuit

AND dan OR di JavaScript melakukan evaluasi short-circuit. Jika hasil dapat ditentukan oleh nilai di sisi kiri, ekspresi di sisi kanan tidak akan dievaluasi.

1let a = false && console.log("This will not be printed");
2console.log(a);  // false
3
4let b = true || console.log("This will not be printed");
5console.log(b);  // true

Dalam kedua kasus, console.log() tidak akan dieksekusi.

Menetapkan prioritas secara eksplisit

Dengan mengelompokkan ekspresi secara eksplisit menggunakan tanda kurung, Anda dapat mencegah kesalahpahaman tentang prioritas.

1console.log(true || (false && false));  // true
Perbedaan antara bahasa alami dan interpretasi program

Saat menggunakan operator logika, penting untuk menyadari adanya ambiguitas dalam bahasa alami. Sebagai contoh, ketika mengatakan 'anjing putih atau kucing,' ini bisa berarti 'seekor anjing putih atau kucing dengan warna apa saja' atau 'seekor anjing putih atau seekor kucing putih.'. Dalam kode, ini akan terlihat seperti ini:.

1if (isWhite && isDog || isCat) {
2    console.log(' "A white dog" or "a cat of any color" ');
3}
4
5if (isWhite && (isDog || isCat)) {
6    console.log(' "A white dog" or "a white cat" ');
7}
8
9console.log(true || (false && false));  // true

Karena bahasa alami mengandung ambiguitas seperti ini, kehati-hatian diperlukan saat membuat kode atau merancang.

Operator Ternary (Operator Kondisional)

JavaScript mencakup operator ternary (operator kondisional).

Operator Deskripsi Contoh Hasil
? : Jika kondisi true, sisi kiri dijalankan, jika false, sisi kanan condition ? jika true : jika false Hasil berdasarkan kondisi
1let age = 20;
2let message = age >= 18 ? "Adult" : "Minor";
3console.log(message);  // "Adult"

Ini ditulis dalam bentuk condition ? nilai jika benar : nilai jika salah.

Operator Bitwise

Operator bitwise JavaScript meliputi yang berikut.

Operator Deskripsi Contoh Hasil
& AND 5 & 1 1
| OR 5 | 1 5
^ XOR 5 ^ 1 4
~ NOT ~5 -6
<< Geser Kiri 5 << 1 10
>> Geser Kanan 5 >> 1 2
 1let x = 0x0F & 0x0C;
 2console.log("0x0F & 0x0C evaluates to:", x, "(0x0C, 12)");  // 0x0C (12)
 3
 4x = 0x04 | 0x02;
 5console.log("0x04 | 0x02 evaluates to:", x, "(0x06, 6)");  // 0x06 (6)
 6
 7x = 0x0F ^ 0x0C;
 8console.log("0x0F ^ 0x0C evaluates to:", x, "(0x03, 3)");  // 0x03 (3)
 9
10// The inverted number is represented as a negative value
11// because JavaScript numbers are stored as signed 32-bit integers.
12x = ~0x0C;
13console.log("~0x0C evaluates to:", x, "(-13, 0xF3)");  // 0xF3 (-13)
14
15x = 0x04 << 1;
16console.log("0x04 << 1 evaluates to:", x, "(0x08, 8)");    // 0x08 (8)
17x = 0x04 >> 1;
18console.log("0x04 >> 1 evaluates to:", x, "(0x02, 2)");    // 0x02 (2)

Operator bit melakukan perhitungan pada angka di tingkat bit. Biasanya mereka digunakan untuk pemrosesan tingkat rendah.

Operator Tipe

Operator tipe JavaScript meliputi yang berikut.

Operator Deskripsi Contoh Hasil
typeof Mengembalikan tipe dari sebuah variabel typeof 123 "number"
instanceof Memeriksa apakah sebuah objek termasuk dalam kelas tertentu arr instanceof Array true
1console.log(typeof "Hello");  // "string"
2console.log(typeof 42);       // "number"
3
4let arr = [1, 2, 3];
5console.log("arr instanceof Array : ", arr instanceof Array); // true

Operator tipe digunakan untuk memeriksa tipe nilai atau mengubahnya ke tipe tertentu.

Operator typeof mengembalikan tipe dari sebuah variabel.

Operator instanceof memeriksa apakah sebuah objek milik kelas tertentu.

Ringkasan

  • Operator aritmatika melakukan perhitungan dasar.
  • Operator penugasan menetapkan atau memperbarui nilai pada variabel.
  • Operator perbandingan membandingkan dua nilai dan mengembalikan hasil true atau false.
  • Operator logika mengevaluasi kombinasi kondisi.
  • Operator ternary memungkinkan Anda menulis pernyataan bersyarat dalam bentuk yang lebih singkat daripada if.
  • Operator bitwise melakukan perhitungan di tingkat bit.
  • Operator tipe memungkinkan Anda memeriksa tipe dari sebuah nilai.

Anda dapat mengikuti artikel di atas menggunakan Visual Studio Code di saluran YouTube kami. Silakan periksa juga saluran YouTube kami.

YouTube Video