Ομαδοποιητικές παρενθέσεις στην JavaScript
Αν το επιθυμείτε, μπορείτε να καθορίσετε την προτεραιότητα των πράξεων χρησιμοποιώντας παρενθέσεις. Ας τροποποιήσουμε, για παράδειγμα, τον κώδικά μας έτσι ώστε πρώτα να εκτελεστεί η πρόσθεση και μετά ο πολλαπλασιασμός:
let a = 2 * (2 + 3);
alert(a); // εμφανίζει 10 (αποτέλεσμα 2 * 5)
Σημείωση: μπορεί να υπάρχει οποιοσδήποτε αριθμός παρενθέσεων, συμπεριλαμβανομένων και παρενθέσεων που βρίσκονται η μία μέσα στην άλλη:
let a = 2 * (2 + 4 * (3 + 1));
alert(a);
Μπορούμε να βάλουμε σε παρένθεση πράξεις που έχουν υψηλή προτεραιότητα - αυτό δεν θα είναι λάθος. Για παράδειγμα, ας βάλουμε σε παρένθεση το γινόμενο των αριθμών:
let a = (2 * 2) + 3;
alert(a); // εμφανίζει 7 (αποτέλεσμα 4 + 3)
Σε αυτήν την περίπτωση, οι παρενθέσεις είναι περιττές (ο πολλαπλασιασμός έχει ήδη υψηλότερη προτεραιότητα), αλλά ο κώδικας είναι αποδεκτός.
Μερικές φορές μια τέτοια ομαδοποίηση χρησιμοποιείται σε σημεία όπου η προτεραιότητα των πράξεων δεν είναι προφανής. Για παράδειγμα, ας δούμε τον ακόλουθο κώδικα:
let a = 8 / 2 * 4;
alert(a);
Όπως ήδη γνωρίζετε, σε αυτόν θα εκτελεστεί πρώτα η διαίρεση και μετά ο πολλαπλασιασμός. Αλλά με την πρώτη ματιά αυτό μπορεί να μην είναι προφανές.
Μπορούμε να χρησιμοποιήσουμε ομαδοποιητικές παρενθέσεις για να δείξουμε ρητά την προτεραιότητα:
let a = (8 / 2) * 4;
alert(a);
Χωρίς να εκτελέσετε τον κώδικα, προσδιορίστε τι θα εμφανιστεί στην οθόνη:
let a = (2 + 3) * (2 + 3);
alert(a);
Χωρίς να εκτελέσετε τον κώδικα, προσδιορίστε τι θα εμφανιστεί στην οθόνη:
let a = (2 + 3) * 2 + 3;
alert(a);
Χωρίς να εκτελέσετε τον κώδικα, προσδιορίστε τι θα εμφανιστεί στην οθόνη:
let a = 2 * (2 + 4 * (3 + 1));
alert(a);
Χωρίς να εκτελέσετε τον κώδικα, προσδιορίστε τι θα εμφανιστεί στην οθόνη:
let a = 2 * 8 / 4;
alert(a);
Χωρίς να εκτελέσετε τον κώδικα, προσδιορίστε τι θα εμφανιστεί στην οθόνη:
let a = (2 * 8) / 4;
alert(a);
Χωρίς να εκτελέσετε τον κώδικα, προσδιορίστε τι θα εμφανιστεί στην οθόνη:
let a = 2 * (8 / 4);
alert(a);