Ποιοι τελεστές υπάρχουν στη JavaScript;
sobes.tech AI
Απάντηση από AI
Στο JavaScript υπάρχουν διάφοροι τύποι τελεστών που εκτελούν διαφορετικές λειτουργίες:
-
Τελεστές ανάθεσης: Αναθέτουν μια τιμή σε μια μεταβλητή.
=(απλή ανάθεση)+=,-=,*=,/=,%=(συνδυασμένες αναθέσεις)**=(ανάθεση με ύψωση στη δύναμη)<<=,>>=,>>>=(μετατόπιση με ανάθεση)&=,|=,^=(bitwise λειτουργίες με ανάθεση)&&=,||=,??=(λογικές αναθέσεις)
-
Τελεστές σύγκρισης: Συγκρίνουν δύο τιμές και επιστρέφουν boolean.
==(ισότητα)!=(ανισότητα)===(ακέραιη ταυτότητα)!==(ακέραιη ανισότητα)>(μεγαλύτερο)<(μικρότερο)>=(μεγαλύτερο ή ίσο)<=(μικρότερο ή ίσο)
-
Αριθμητικοί τελεστές: Εκτελούν μαθηματικές λειτουργίες.
+(άθροιση)-(αφαίρεση)*(πολλαπλασιασμός)/(διαίρεση)%(υπόλοιπο)**(ύψωση στη δύναμη)++(αύξηση)--(μείωση)
-
Bitwise τελεστές: Εκτελούν λειτουργίες σε επίπεδο μεμονωμένων bits.
&(bitwise AND)|(bitwise OR)^(bitwise XOR)~(bitwise NOT)<<(αριστερή μετατόπιση)>>(δεξιά μετατόπιση με διατήρηση του σήματος)>>>(δεξιά μετατόπιση με μηδενική συμπλήρωση)
-
Λογικοί τελεστές: Συνδυάζουν ή αντιστρέφουν boolean τιμές.
&&(λογικό AND)||(λογικό OR)!(λογικό NOT)
-
Τελεστές συμβολοσειρών: Εργάζονται με strings.
+(συνένωση)
-
Τελεστής τριών (ternary): Σύντομη μορφή του
if...else.// συνθήκη ? έκφραση1 : έκφραση2 let αποτέλεσμα = (a > b) ? "το a είναι μεγαλύτερο" : "το b είναι μεγαλύτερο ή ίσο με το a"; -
Τελεστής κόμματος: Εκτελεί πολλαπλές εκφράσεις και επιστρέφει την τελευταία.
let x = 0; let y = (x++, 5); // το x γίνεται 1, το y γίνεται 5 -
Τελεστές σχέσης: Ελέγχουν τον τύπο και την ύπαρξη ιδιοτήτων.
in(ελέγχει αν υπάρχει ιδιότητα σε αντικείμενο)
// 'propertyName' in object console.log('length' in [1, 2, 3]); // trueinstanceof(ελέγχει αν ένα αντικείμενο είναι παράδειγμα κλάσης)
// object instanceof className function Car() {} let το αυτοκίνητό μου = new Car(); console.log(το αυτοκίνητό μου instanceof Car); // true -
Μοναδικοί τελεστές:
+(μετατρέπει τον τελεστή σε αριθμό)
console.log(+"5"); // 5 (αριθμός)-(μετατρέπει τον τελεστή σε αριθμό και αντιστρέφει το σήμα)
console.log(-"10"); // -10 (αριθμός) -
Τύποι τελεστών:
typeof(επιστρέφει μια συμβολοσειρά που δείχνει τον τύπο του τελεστή)
// typeof operand console.log(typeof 42); // "number" console.log(typeof "γεια"); // "string"delete(διαγράφει ιδιότητα αντικειμένου ή στοιχείο πίνακα)
// delete object.property // delete array[index] let αντικείμενο = { a: 1, b: 2 }; delete αντικείμενο.a; console.log(αντικείμενο); // { b: 2 } -
Ο τελεστής ομάδας ( ): Ορίζει τη σειρά εκτέλεσης των λειτουργιών.
let z = (2 + 3) * 4; // Οι πράξεις μέσα στις παρενθέσεις εκτελούνται πρώτες -
Ο τελεστής new: Δημιουργεί ένα νέο αντικείμενο.
// new Constructor([arguments]) let ημερομηνία = new Date(); -
Ο τελεστής super: Καλεί τη μέθοδο της γονικής κλάσης.
class Γονέας { χαιρετισμός() { console.log("Γειά από τον Γονέα"); } } class Παιδί extends Γονέας { χαιρετισμός() { super.χαιρετισμός(); // Κλήση μεθόδου γονέα console.log("Γειά από το Παιδί"); } } -
Ο τελεστής this: Αναφέρεται στο τρέχον πλαίσιο εκτέλεσης.
-
Ο τελεστής void: Εκτελεί μια έκφραση και επιστρέφει
undefined.// void έκφραση console.log(void 0); // undefined -
Οι τελεστές nullish coalescing και optional chaining:
??(nullish coalescing operator - επιστρέφει τον δεξιό τελεστή αν ο αριστερός είναιnullήundefined)
// left ?? right let τιμή = undefined ?? "προεπιλογή"; // η τιμή θα είναι "προεπιλογή"?.(optional chaining operator - ασφαλής πρόσβαση σε ιδιότητες, αν η ενδιάμεση τιμή είναιnullήundefined, δεν ρίχνει σφάλμα)
// object?.property?.method() let χρήστης = { διεύθυνση: { πόλη: "NYC" } }; console.log(χρήστης.διεύθυνση?.ταχυδρομικόςΚωδικός); // undefined (χωρίς σφάλμα)