Προσμετρικοί Υπολογιστές ECMAScript

Οι γονιμοποιητικοί συναρτήτες του ECMAScript λειτουργούν με τρόπο παρόμοιο με τους γονιμοποιητικούς συναρτήτες των γλωσσών Java, C, Perl κ.λπ.

Θα πρέπει να σημειωθεί ότι ο γονιμοποιητικός συναρτήτης έχει επίσης ορισμένες λειτουργίες αυτόματης μετατροπής.

Ο συναρτήτης γονιμοποίησης

Ο συναρτήτης γονιμοποίησης εκφράζεται με αστέρι (*), και χρησιμοποιείται για τη πολλαπλασιαστική πράξη δύο αριθμών.

Η γραμματική της πολλαπλασιαστικής συναρμολογητής στο ECMAScript είναι η ίδια με αυτή του γλώσσας C:

var iResult = 12 * 34

Ωστόσο, κατά την επεξεργασία ειδικών τιμών, η πολλαπλασιαστική συναρμολογητής στο ECMAScript έχει μερικές ειδικές συμπεριφορές:

  • Αν το αποτέλεσμα είναι πολύ μεγάλο ή πολύ μικρό, το αποτέλεσμα που δημιουργείται είναι Infinity ή -Infinity.
  • Αν κάποιος αριθμητικός όρος είναι NaN, το αποτέλεσμα είναι NaN.
  • Ο Infinity πολλαπλασιάζεται με το 0, το αποτέλεσμα είναι NaN.
  • Ο Infinity πολλαπλασιάζεται με οποιονδήποτε αριθμό εκτός από το 0, το αποτέλεσμα είναι Infinity ή -Infinity.
  • Ο Infinity πολλαπλασιάζεται με τον Infinity, το αποτέλεσμα είναι Infinity.

Σημείωση:Αν ο αριθμητικός όρος είναι αριθμός, εκτελείται η τυπική πολλαπλασιαστική διαιρέση, δηλαδή δύο θετικοί αριθμοί ή δύο αρνητικοί αριθμοί είναι θετικοί, οι δύο αριθμοί έχουν διαφορετικά σύμβολα, το αποτέλεσμα είναι αρνητικό.

Συναρμολογητής διαιρέσεως

Ο συναρμολογητής διαιρέσεως δείχνεται με το παράθυρο (/) και χρησιμοποιείται για να διαιρέσει τον πρώτο αριθμητικό όρο με τον δεύτερο αριθμητικό όρο:

var iResult = 88 / 11;

Όπως και με τον συναρμολογητή πολλαπλασιασμού, ο συναρμολογητής διαιρέσεως έχει επίσης ειδικές συμπεριφορές κατά την επεξεργασία ειδικών τιμών:

  • Αν το αποτέλεσμα είναι πολύ μεγάλο ή πολύ μικρό, το αποτέλεσμα που δημιουργείται είναι Infinity ή -Infinity.
  • Αν κάποιος αριθμητικός όρος είναι NaN, το αποτέλεσμα είναι NaN.
  • Η διαιρέση του Infinity με το Infinity αποδίδει NaN.
  • Ο Infinity διαιρείται με οποιονδήποτε αριθμό, το αποτέλεσμα είναι Infinity.
  • Η διαιρέση του 0 με οποιονδήποτε μη απεριόριστο αριθμό αποδίδει NaN.
  • Ο Infinity διαιρείται με οποιονδήποτε αριθμό εκτός από το 0, το αποτέλεσμα είναι Infinity ή -Infinity.

Σημείωση:Αν ο αριθμητικός όρος είναι αριθμός, εκτελείται η τυπική διαιρέση, δηλαδή δύο θετικοί αριθμοί ή δύο αρνητικοί αριθμοί είναι θετικοί, οι δύο αριθμοί έχουν διαφορετικά σύμβολα, το αποτέλεσμα είναι αρνητικό.

Συναρμολογητής υπολοίπου

Ο συναρμολογητής διαιρέσεως (υπόλοιπο) δείχνεται με το πρόσημο τοποθέτησης (%), και χρησιμοποιείται ως εξής:

var iResult = 26%5; // equals 1

Όπως και με άλλους πολλαπλούς συναρμολογητές, για ειδικούς τιμούς, ο συναρμολογητής του υπολοίπου έχει ειδικές συμπεριφορές:

  • Αν ο διαιρέτης είναι Infinity ή ο διαιρέτης είναι 0, το αποτέλεσμα είναι NaN.
  • Η διαιρέση του Infinity με το Infinity αποδίδει NaN.
  • Αν ο διαιρέτης είναι απεριόριστος αριθμός, το αποτέλεσμα είναι ο διαιρέτης.
  • Αν ο διαιρέτης είναι 0, το αποτέλεσμα είναι 0.

Σημείωση:Αν ο αριθμητικός όρος είναι αριθμός, εκτελείται η τυπική αριθμητική διαιρέση, επιστρέφοντας το αποτέλεσμα της διαιρέσης ως το υπόλοιπο.