Section Artikel
Operator Aritmatika JavaScript
Operator aritmatika berfungsi melakukan perhitungan aritmatika pada angka (literal atau variabel).
| Operator | Deskripsi |
|---|---|
| + | Penjumlahan |
| – | Pengurangan |
| * | Perkalian |
| ** | Eksponensial (ES2016) |
| / | Pembagian |
| % | Modulus (Sisa bagi) |
| ++ | Increment |
| — | Decrement |
Operasi Aritmatika
Operasi aritmatika typical akan beroperasi pada dua angka.
Kedua angka tersebut bisa literal.
Contoh :
<!DOCTYPE html> <html> <body> <p>Operasi aritmatika typical akan beroperasi pada dua angka dan menghasilkan angka baru.</p> <p id="demo"></p> <script> var x = 100 + 50; document.getElementById("demo").innerHTML = x; </script> </body> </html>
atau variabel.
Contoh :
<!DOCTYPE html>
<html>
<body>
<p>Operasi aritmatika typical akan beroperasi pada dua angka (variabel) dan menghasilkan angka baru.</p>
<p id="demo"></p>
<script>
var a = 100;
var b = 50;
var x = a + b;
document.getElementById("demo").innerHTML = x;
</script>
</body>
</html>
atau ekspresi.
Contoh :
<!DOCTYPE html>
<html>
<body>
<p>Operasi aritmatika typical akan beroperasi pada dua angka (ekspresi) dan menghasilkan angka baru.</p>
<p id="demo"></p>
<script>
var a = 3;
var x = (100 + 50) * a;
document.getElementById("demo").innerHTML = x;
</script>
</body>
</html>
Operator dan Operand
Angka-angka (dalam operasi aritmatika) disebut operand.
Operasi (akan dilakukan di antara dua operand) ditentukan oleh operator.
| Operand | Operator | Operand |
|---|---|---|
| 100 | + | 50 |
Penjumlahan
Operator penjumlahan (+) berfungsi menambahkan angka:
<!DOCTYPE html>
<html>
<body>
<h2>Operator +</h2>
<p id="demo"></p>
<script>
var x = 5;
var y = 2;
var z = x + y;
document.getElementById("demo").innerHTML = z;
</script>
</body>
</html>
Pengurangan
Operator pengurangan (-) berfungsi mengurangi angka.
<!DOCTYPE html>
<html>
<body>
<h2>Operator -</h2>
<p id="demo"></p>
<script>
var x = 5;
var y = 2;
var z = x - y;
document.getElementById("demo").innerHTML = z;
</script>
</body>
</html>
Perkalian
Operator perkalian (*) berfungsi mengalikan angka.
<!DOCTYPE html>
<html>
<body>
<h2>Operator *</h2>
<p id="demo"></p>
<script>
var x = 5;
var y = 2;
var z = x * y;
document.getElementById("demo").innerHTML = z;
</script>
</body>
</html>
Pembagian
Operator pembagian (/) berfungsi membagi angka.
<!DOCTYPE html>
<html>
<body>
<h2>Operator /</h2>
<p id="demo"></p>
<script>
var x = 5;
var y = 2;
var z = x / y;
document.getElementById("demo").innerHTML = z;
</script>
</body>
</html>
Sisa
Operator modulus (%) mengembalikan sisa pembagian.
<!DOCTYPE html>
<html>
<body>
<h2>Operator %</h2>
<p id="demo"></p>
<script>
var x = 5;
var y = 2;
var z = x % y;
document.getElementById("demo").innerHTML = z;
</script>
</body>
</html>
Dalam aritmatika, pembagian dua bilangan bulat menghasilkan hasil bagi dan sisa.
Dalam matematika, hasil operasi modulus adalah sisa pembagian aritmatika.
Incrementing
Operator increment (++) berfungsi menambahkan angka.
<!DOCTYPE html>
<html>
<body>
<h2>Operator ++</h2>
<p id="demo"></p>
<script>
var x = 5;
x++;
var z = x;
document.getElementById("demo").innerHTML = z;
</script>
</body>
</html>
Decrement
Operator decrement (–) berfungsi mengurangi angka.
<!DOCTYPE html>
<html>
<body>
<h2>Operator -- </h2>
<p id="demo"></p>
<script>
var x = 5;
x--;
var z = x;
document.getElementById("demo").innerHTML = z;
</script>
</body>
</html>
Eksponensial
Operator eksponen (**) menaikkan operan pertama ke pangkat operan kedua.
<!DOCTYPE html>
<html>
<body>
<h2>OperatorT **</h2>
<p id="demo"></p>
<script>
var x = 5;
document.getElementById("demo").innerHTML = x ** 2;
</script>
</body>
</html>
x ** y menghasilkan hasil yang sama dengan Math.pow (x, y):
<!DOCTYPE html>
<html>
<body>
<h2>Math.pow()</h2>
<p id="demo"></p>
<script>
var x = 5;
document.getElementById("demo").innerHTML = Math.pow(x,2);
</script>
</body>
</html>
Prioritas Operator
Prioritas operator menjelaskan urutan operasi yang dilakukan dalam ekspresi aritmatika.
<!DOCTYPE html>
<html>
<body>
<p>perkalian lebih diutamakan daripada penjumlahan.</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = 100 + 50 * 3;
</script>
</body>
</html>
Apakah hasil contoh di atas sama dengan 150 * 3 atau sama dengan 100 + 150?
Apakah penjumlahan atau perkalian dilakukan terlebih dahulu?
Seperti pada aturan matematika, perkalian dilakukan terlebih dahulu.
Perkalian (*) dan pembagian (/) memiliki prioritas lebih tinggi daripada penjumlahan (+) dan pengurangan (-).
Dan (seperti dalam aturan matematika) prioritas dapat diubah dengan menggunakan tanda kurung:
<!DOCTYPE html>
<html>
<body>
<p>Perkalian lebih diutamakan daripada penjumlahan.</p>
<p>Tetapi tanda kurung lebih diutamakan daripada perkalian.</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = (100 + 50) * 3;
</script>
</body>
</html>
Saat menggunakan tanda kurung, operasi di dalam tanda kurung dihitung terlebih dahulu.
Saat banyak operasi memiliki prioritas yang sama (seperti penjumlahan dan pengurangan), operasi tersebut dihitung dari kiri ke kanan:
<!DOCTYPE html>
<html>
<body>
<p>Jika banyak operasi memiliki prioritas yang sama, operasi tersebut dihitung dari kiri ke kanan.</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = 100 + 50 - 3;
</script>
</body>
</html>
Nilai Urutan Operator JavaScript
| Value | Operator | Deskripsi | Contoh |
|---|---|---|---|
| 20 | ( ) | Expression grouping | (3 + 4) |
| 19 | . | Member | person.name |
| 19 | [] | Member | person[“name”] |
| 19 | () | Function call | myFunction() |
| 19 | new | Create | new Date() |
| 17 | ++ | Postfix Increment | i++ |
| 17 | — | Postfix Decrement | i– |
| 16 | ++ | Prefix Increment | ++i |
| 16 | — | Prefix Decrement | –i |
| 16 | ! | Logical not | !(x==y) |
| 16 | typeof | Type | typeof x |
| 15 | ** | Exponentiation (ES2016) | 10 ** 2 |
| 14 | * | Multiplication | 10 * 5 |
| 14 | / | Division | 10 / 5 |
| 14 | % | Division Remainder | 10 % 5 |
| 13 | + | Addition | 10 + 5 |
| 13 | – | Subtraction | 10 – 5 |
| 12 | << | Shift left | x << 2 |
| 12 | >> | Shift right | x >> 2 |
| 12 | >>> | Shift right (unsigned) | x >>> 2 |
| 11 | < | Less than | x < y |
| 11 | <= | Less than or equal | x <= y |
| 11 | > | Greater than | x > y |
| 11 | >= | Greater than or equal | x >= y |
| 11 | in | Property in Object | “PI” in Math |
| 11 | instanceof | Instance of Object | instanceof Array |
| 10 | == | Equal | x == y |
| 10 | === | Strict equal | x === y |
| 10 | != | Unequal | x != y |
| 10 | !== | Strict unequal | x !== y |
| 9 | & | Bitwise AND | x & y |
| 8 | ^ | Bitwise XOR | x ^ y |
| 7 | | | Bitwise OR | x | y |
| 6 | && | Logical AND | x && y |
| 5 | || | Logical OR | x || y |
| 4 | ? : | Condition | ? “Yes” : “No” |
| 3 | += | Assignment | x += y |
| 3 | /= | Assignment | x /= y |
| 3 | -= | Assignment | x -= y |
| 3 | *= | Assignment | x *= y |
| 3 | %= | Assignment | x %= y |
| 3 | <<= | Assignment | x <<= y |
| 3 | >>= | Assignment | x >>= y |
| 3 | >>>= | Assignment | x >>>= y |
| 3 | &= | Assignment | x &= y |
| 3 | ^= | Assignment | x ^= y |
| 3 | |= | Assignment | x |= y |
| 2 | yield | Pause Function | yield x |
| 1 | , | Comma | 5 , 6 |
Ekspresi dalam tanda kurung sepenuhnya dihitung sebelum nilainya digunakan pada hasil sisa ekspresi.