Αριθμιτικοί τελεστές
Οι αριθμητικοί τελεστές είναι τα σύμβολα που χρησιμοποιούμε για να εκτελούμε μαθηματικές πράξεις με αριθμούς. Είναι οι πιο συνηθισμένοι τελεστές και πιθανώς να μας είναι γνώριμοι από τα μαθηματικά.
Πρόσθεση (+)
Ο τελεστής + χρησιμοποιείται για να προσθέσει δύο αριθμούς.
const result = 5 + 3;
const result2 = 10.5 + 2.3;Operator overloadding
Ο τελεστής + στην JavaScript χαρακτηρίζεται ως overloadded operator. Αυτό σημαίνει ότι έχει διαφορετική συμπεριφορά ανάλογα με τον τύπο των τελεστέων τιμών! Αν ένας από τους τελεστέους είναι string, τότε το + δεν κάνει πρόσθεση αριθμών, αλλά ενώνει τα strings (string concatenation).
const fullName = "John" + " Doe";
console.log(fullName); // "John Doe"
const message = "Η ηλικία μου είναι " + 30;
console.log(message); // Η ηλικία μου είναι 30"
Αφαίρεση (-)
Ο τελεστής - χρησιμοποιείται για να αφαιρέσει τον δεύτερο αριθμό από τον πρώτο.
const difference = 10 - 4;
console.log(difference); // 6
Πολλαπλασιασμός (*)
Ο τελεστής * χρησιμοποιείται για τον πολλαπλασιασμό δύο αριθμών.
const product = 6 * 7;
console.log(product); // 42
Διαίρεση (/)
Ο τελεστής / χρησιμοποιείται για τη διαίρεση του πρώτου αριθμού με τον δεύτερο.
const quotient = 15 / 3;
console.log(quotient); // 5
const decimalResult = 10 / 4;
console.log(decimalResult); // 2.5
Operator overloadding
Η διαίρεση με το μηδέν έχει ειδικές συμπεριφορές στην JavaScript:
- Αν διαιρέσετε έναν θετικό αριθμό με το
0, το αποτέλεσμα είναιInfinity. - Αν διαιρέσετε έναν αρνητικό αριθμό με το
0, το αποτέλεσμα είναι-Infinity. - Αν διαιρέσετε το
0με το0, ή προσπαθήσετε να διαιρέσετε κάτι που δεν είναι αριθμός, το αποτέλεσμα είναιNaN.
const inf = 10 / 0; // Infinity
console.log(inf); // Infinity
const negInf = -5 / 0;
console.log(negInf); // -Infinity
const notANumber = 0 / 0;
console.log(notANumber); // NaN
Τα Infinity, -Infinity και NaN είναι ειδικοί τύποι δεδομένων που θα εξετάσουμε σε μελλοντικό κεφάλαιο.
Υπόλοιπο διαίρεσης (%)
Ο τελεστής % (γνωστός και ως modulo ή remainder operator) δίνει το υπόλοιπο μιας ακέραιας διαίρεσης. Είναι πολύ χρήσιμος σε διάφορα σενάρια, όπως ο έλεγχος για ζυγούς/μονούς αριθμούς.
const remainder1 = 10 % 3;
console.log(remainder1); // 1
const remainder2 = 12 % 5;
console.log(remainder2); // 2
Αύξηση (++) και μείωση (--)
Αυτοί οι τελεστές χρησιμοποιούνται για να αυξήσουν ή να μειώσουν την τιμή μιας μεταβλητής κατά 1. Μπορούν να χρησιμοποιηθούν ως πρόθεμα (πριν τη μεταβλητή) ή ως επίθεμα (μετά τη μεταβλητή), και η θέση τους επηρεάζει το πότε γίνεται η αλλαγή της τιμής.
πρόθεμα (++x, --x): Πρώτα αλλάζει η τιμή της μεταβλητής και μετά χρησιμοποιείται η νέα τιμή στο επόμενο expression.
const a = 5;
const b = ++a; // Το 'a' γίνεται 6, μετά το 'b' παίρνει την τιμή 6
console.log("a:", a, "b:", b); // a: 6 b: 6
επίθεμα (x++, x--): η τιμή της μεταβλητής αλλάζει αφού πρώτα γίνει evaluate στο expression.
const x = 5;
const y = x++; // Το 'y' παίρνει την τιμή 5, μετά το 'x' γίνεται 6
console.log("x:", x, "y:", y); // x: 6 y: 5
Ύψωση αριθμού σε δύναμη (**)
Ο τελεστής ** χρησιμοποιείται για να υπολογίσει την εκθετική δύναμη (έναν αριθμό υψωμένο σε μία δύναμη).
const power1 = 2 ** 3;
console.log(power1); // 8
const power2 = 5 ** 2;
console.log(power2); // 25