Αριθμός JavaScript (με παραδείγματα)

Σε αυτό το σεμινάριο, θα μάθετε για τον αριθμό JavaScript με τη βοήθεια παραδειγμάτων.

Στο JavaScript, οι αριθμοί είναι πρωτόγονοι τύποι δεδομένων. Για παράδειγμα,

 const a = 3; const b = 3.13;

Σε αντίθεση με ορισμένες άλλες γλώσσες προγραμματισμού, δεν χρειάζεται να δηλώνετε συγκεκριμένα για ακέραιες ή κυμαινόμενες τιμές χρησιμοποιώντας int , float κ.λπ.

Μπορείτε να χρησιμοποιήσετε την εκθετική σημειογραφία e για να συμπεριλάβετε πολύ μεγάλους ή πολύ μικρούς αριθμούς. Για παράδειγμα,

 const a1 = 5e9; console.log(a1); //5000000000 const a2 = 5e-5; console.log(a2); // 0.00005

Οι αριθμοί μπορούν επίσης να συμβολίζονται με δεκαεξαδική σημειογραφία. Για παράδειγμα,

 const a = 0xff; console.log(a); // 255 const b = 0x00 ; console.log(b); // 0

+ Χειριστής με αριθμούς

Όταν +χρησιμοποιείται με αριθμούς, χρησιμοποιείται για την προσθήκη αριθμών. Για παράδειγμα,

 const a = 4 + 9; console.log(a); // 13

Όταν +χρησιμοποιείται με αριθμούς και συμβολοσειρές, χρησιμοποιείται για τη συνένωση τους. Για παράδειγμα,

 const a = '4' + 9; console.log(a); // 49

Όταν μια αριθμητική συμβολοσειρά χρησιμοποιείται με άλλες αριθμητικές λειτουργίες, η αριθμητική συμβολοσειρά μετατρέπεται σε αριθμό. Για παράδειγμα,

 const a = '4' - 2; console.log(a); // 2 const a = '4' / 2; console.log(a); // 2 const a = '4' * 2; console.log(a); // 8

JavaScript NaN

Στο JavaScript, NaN(Not a Number) είναι μια λέξη-κλειδί που δείχνει ότι η τιμή δεν είναι αριθμός.

Η εκτέλεση αριθμητικών πράξεων (εκτός +) σε αριθμητική τιμή με αποτέλεσμα συμβολοσειράς NaN. Για παράδειγμα,

 const a = 4 - 'hello'; console.log(a); // NaN

Η ενσωματωμένη συνάρτηση isNaN()μπορεί να χρησιμοποιηθεί για να βρει αν μια τιμή είναι ένας αριθμός. Για παράδειγμα,

 const a = isNaN(9); console.log(a); // false const a = isNaN(4 - 'hello'); console.log(a); // true

Όταν ο typeofχειριστής χρησιμοποιείται για NaNτιμή, δίνει έξοδο αριθμού. Για παράδειγμα,

 const a = 4 - 'hello'; console.log(a); // NaN console.log(typeof a); // "number"

Άπειρο JavaScript

Σε JavaScript, όταν γίνεται υπολογισμός που υπερβαίνει τον μεγαλύτερο (ή μικρότερο) δυνατό αριθμό, Infinity -Infinity) επιστρέφεται. Για παράδειγμα,

 const a = 2 / 0; console.log(a); // Infinity const a = -2 / 0; console.log(a); // -Infinity

JavaScript BigInt

Στο JavaScript, ο τύπος αριθμού μπορεί να αντιπροσωπεύει μόνο αριθμούς μικρότερους από (2 53 - 1) και περισσότερους από - (2 53 - 1) . Ωστόσο, εάν πρέπει να χρησιμοποιήσετε μεγαλύτερο αριθμό από αυτόν, μπορείτε να χρησιμοποιήσετε τον τύπο δεδομένων BigInt.

Ένας αριθμός BigInt δημιουργείται προσθέτοντας n στο τέλος ενός ακέραιου. Για παράδειγμα,

 // BigInt value const value = 900719925124740998n; // Adding two big integers const value1 = value + 1n; console.log(value1); // returns "900719925124740999n"

Σημείωση: Το BigInt παρουσιάστηκε στη νεότερη έκδοση του JavaScript και δεν υποστηρίζεται από πολλά προγράμματα περιήγησης. Επισκεφτείτε την υποστήριξη JavaScript BigInt για να μάθετε περισσότερα.

Οι αριθμοί JavaScript αποθηκεύονται σε 64-bit

Στο JavaScript, οι αριθμοί αποθηκεύονται σε μορφή 64-bit IEEE-754, επίσης γνωστοί ως "αριθμοί κυμαινόμενου σημείου διπλής ακρίβειας".

Οι αριθμοί αποθηκεύονται σε 64 bit (ο αριθμός αποθηκεύεται σε θέσεις 0 έως 51 bit, ο εκθέτης σε θέσεις 52 έως 62 bit και η θέση εισόδου σε 63 bit).

Αριθμοί Εκθέτης Σημάδι
52 bit (0 - 51) 11 bits (52- 62) 1 bit (63)

Προβλήματα ακριβείας

Οι λειτουργίες σε αριθμούς κυμαινόμενου σημείου οδηγούν σε απροσδόκητα αποτελέσματα. Για παράδειγμα,

 const a = 0.1 + 0.2; console.log(a); // 0.30000000000000004

Το αποτέλεσμα θα πρέπει να είναι 0,3 αντί 0,30000000000000004 . Αυτό το σφάλμα παρουσιάζεται επειδή σε JavaScript, οι αριθμοί αποθηκεύονται σε δυαδική μορφή για να αντιπροσωπεύουν δεκαδικά ψηφία εσωτερικά. Και οι δεκαδικοί αριθμοί δεν μπορούν να αναπαρασταθούν με δυαδική μορφή ακριβώς.

Για να επιλύσετε το παραπάνω πρόβλημα, μπορείτε να κάνετε κάτι τέτοιο:

 const a = (0.1 * 10 + 0.2 * 10) / 10; console.log(a); // 0.3

Μπορείτε επίσης να χρησιμοποιήσετε τη toFixed()μέθοδο.

 const a = 0.1 + 0.2; console.log(a.toFixed(2)); // 0.30

toFixed(2) στρογγυλοποιεί τον δεκαδικό αριθμό σε δύο δεκαδικά ψηφία.

 const a = 9999999999999999 console.log(a); // 10000000000000000

Σημείωση : Οι ακέραιοι αριθμοί είναι ακριβείς έως και 15 ψηφία.

Αριθμός αντικειμένων

Μπορείτε επίσης να δημιουργήσετε αριθμούς χρησιμοποιώντας τη newλέξη-κλειδί. Για παράδειγμα,

 const a = 45; // creating a number object const b = new Number(45); console.log(a); // 45 console.log(b); // 45 console.log(typeof a); // "number" console.log(typeof b); // "object"

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

Μέθοδοι αριθμού JavaScript

Εδώ είναι μια λίστα με τις ενσωματωμένες μεθόδους αριθμών σε JavaScript.

Μέθοδος Περιγραφή
isNaN () καθορίζει εάν η τιμή που πέρασε είναι NaN
isFinite () καθορίζει εάν η τιμή που πέρασε είναι ένας πεπερασμένος αριθμός
είναιInteger () καθορίζει εάν η τιμή που πέρασε είναι ακέραιος
isSafeInteger () καθορίζει εάν η τιμή που πέρασε είναι ένας ασφαλής ακέραιος
parseFloat (συμβολοσειρά) μετατρέπει την αριθμητική κινούμενη συμβολοσειρά σε κινούμενο σημείο
parseInt (συμβολοσειρά, (radix)) μετατρέπει την αριθμητική συμβολοσειρά σε ακέραιο
toExponential (fractionDigits) returns a string value for a number in exponential notation
toFixed(digits) returns a string value for a number in fixed-point notation
toPrecision() returns a string value for a number to a specified precision
toString((radix)) returns a string value in a specified radix(base)
valueof() returns the numbers value
toLocaleString() returns a string with a language sensitive representation of a number

For example,

 // check if a is integer const a = 12; console.log(Number.isInteger(a)); // true // check if b is NaN const b = NaN; console.log(Number.isNaN(b)); // true // display upto two decimal point const d = 5.1234; console.log(d.toFixed(2)); // 5.12

JavaScript Number Properties

Here is a list of Number properties in JavaScript.

Property Description
EPSILON returns the smallest interval between two representable numbers
MAX_SAFE_INTEGER returns the maximum safe integer
MAX_VALUE returns the largest possible value
MIN_SAFE_INTEGER returns the minimum safe integer
MIN_VALUE returns the smallest possible value
NaN represents 'Not-a-Number' value
NEGATIVE_INFINITY represents negative infinity
POSITIVE_INFINITY αντιπροσωπεύει θετικό άπειρο
πρωτότυπο επιτρέπει την προσθήκη ιδιοτήτων σε αντικείμενα αριθμού

Για παράδειγμα,

 // largest possible value const a = Number.MAX_VALUE; console.log(a); // 1.7976931348623157e+308 // maximum safe integer const a = Number.MAX_SAFE_INTEGER; console.log(a); // 9007199254740991

Συνάρτηση αριθμού JavaScript ()

Η Number()λειτουργία χρησιμοποιείται για τη μετατροπή διαφόρων τύπων δεδομένων σε αριθμούς. Για παράδειγμα,

 const a = '23'; // string const b = true; // boolean //converting to number const result1 = Number(a); const result2 = Number(b); console.log(result1); // 23 console.log(result2); // 1

Εάν θέλετε να μάθετε περισσότερα σχετικά με τη μετατροπή αριθμών, επισκεφθείτε τη μετατροπή τύπου JavaScript.

ενδιαφέροντα άρθρα...