Μετατροπές τύπου JavaScript (με παραδείγματα)

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

Η διαδικασία μετατροπής ενός τύπου δεδομένων σε έναν άλλο τύπο δεδομένων ονομάζεται μετατροπή τύπου. Υπάρχουν δύο τύποι μετατροπής τύπου στο JavaScript.

  • Σιωπηρή μετατροπή
  • Άμεση μετατροπή

Σιωπηρή μετατροπή JavaScript

Σε ορισμένες περιπτώσεις, το JavaScript μετατρέπει αυτόματα έναν τύπο δεδομένων σε έναν άλλο (στον σωστό τύπο). Αυτό είναι γνωστό ως σιωπηρή μετατροπή.

Παράδειγμα 1: Σιωπηρή μετατροπή σε συμβολοσειρά

 // numeric string used with + gives string type let result; result = '3' + 2; console.log(result) // "32" result = '3' + true; console.log(result); // "3true" result = '3' + undefined; console.log(result); // "3undefined" result = '3' + null; console.log(result); // "3null"

Σημείωση : Όταν ένας αριθμός προστίθεται σε μια συμβολοσειρά, το JavaScript μετατρέπει τον αριθμό σε μια συμβολοσειρά πριν από τη συνένωση.

Παράδειγμα 2: Σιωπηρή μετατροπή σε αριθμό

 // numeric string used with - , / , * results number type let result; result = '4' - '2'; console.log(result); // 2 result = '4' - 2; console.log(result); // 2 result = '4' * 2; console.log(result); // 8 result = '4' / 2; console.log(result); // 2

Παράδειγμα 3: Μη αριθμητικά αποτελέσματα συμβολοσειράς στο NaN

 // non-numeric string used with +, - , / , * results to NaN let result; result = 'hello' - 'world'; console.log(result); // NaN result = '4' - 'hello'; console.log(result); // NaN

Παράδειγμα 4: Σιωπηρή Boolean μετατροπή σε αριθμό

 // if boolean is used, true is 1, false is 0 let result; result = '4' - true; console.log(result); // 3 result = 4 + true; console.log(result); // 5 result = 4 + false; console.log(result); // 4

Σημείωση: Το JavaScript θεωρεί 0 ως falseκαι όλους τους μη μηδενικούς αριθμούς ως true. Και, εάν trueμετατραπεί σε αριθμό, το αποτέλεσμα είναι πάντα 1.

Παράδειγμα 5: μηδενική μετατροπή σε αριθμό

 // null is 0 when used with number let result; result = 4 + null; console.log(result); // 4 result = 4 - null; console.log(result); // 4

Παράδειγμα 6: Απροσδιόριστο που χρησιμοποιείται με αριθμό, boolean ή null

 // Arithmetic operation of undefined with number, boolean or null gives NaN let result; result = 4 + undefined; console.log(result); // NaN result = 4 - undefined; console.log(result); // NaN result = true + undefined; console.log(result); // NaN result = null + undefined; console.log(result); // NaN

Άμεση μετατροπή JavaScript

Μπορείτε επίσης να μετατρέψετε έναν τύπο δεδομένων σε έναν άλλο σύμφωνα με τις ανάγκες σας. Η μετατροπή τύπου που κάνετε με το χέρι είναι γνωστή ως ρητή μετατροπή τύπου.

Στο JavaScript, οι μετατροπές ρητού τύπου πραγματοποιούνται χρησιμοποιώντας ενσωματωμένες μεθόδους.

Ακολουθούν ορισμένες κοινές μέθοδοι ρητών μετατροπών.

1. Μετατρέψτε σε αριθμό ρητά

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

 let result; // string to number result = Number('324'); console.log(result); // 324 result = Number('324e-1') console.log(result); // 32.4 // boolean to number result = Number(true); console.log(result); // 1 result = Number(false); console.log(result); // 0

Στο JavaScript, οι κενές συμβολοσειρές και οι nullτιμές επιστρέφουν 0 . Για παράδειγμα,

 let result; result = Number(null); console.log(result); // 0 let result = Number(' ') console.log(result); // 0

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

 let result; result = Number('hello'); console.log(result); // NaN result = Number(undefined); console.log(result); // NaN result = Number(NaN); console.log(result); // NaN

Σημείωση : Μπορείτε επίσης να δημιουργήσετε αριθμούς από χορδές που χρησιμοποιούν parseInt(), parseFloat(), μοναδιαίο χειριστή +και Math.floor(). Για παράδειγμα,

 let result; result = parseInt('20.01'); console.log(result); // 20 result = parseFloat('20.01'); console.log(result); // 20.01 result = +'20.01'; console.log(result); // 20.01 result = Math.floor('20.01'); console.log(result); // 20

2. Μετατροπή σε συμβολοσειρά ρητά

Για να μετατρέψετε άλλους τύπους δεδομένων σε συμβολοσειρές, μπορείτε να χρησιμοποιήσετε ένα String()ή τα δύο toString(). Για παράδειγμα,

 //number to string let result; result = String(324); console.log(result); // "324" result = String(2 + 4); console.log(result); // "6" //other data types to string result = String(null); console.log(result); // "null" result = String(undefined); console.log(result); // "undefined" result = String(NaN); console.log(result); // "NaN" result = String(true); console.log(result); // "true" result = String(false); console.log(result); // "false" // using toString() result = (324).toString(); console.log(result); // "324" result = true.toString(); console.log(result); // "true"

Σημείωση : τα String()παίρνει nullκαι τα undefinedμετατρέπει σε συμβολοσειρά. Ωστόσο, toString()δίνει σφάλμα ότανnull are passed.

3. Μετατροπή σε Boolean ρητά

Για να μετατρέψετε άλλους τύπους δεδομένων σε boolean, μπορείτε να το χρησιμοποιήσετε Boolean().

Σε JavaScript, undefined, null, 0, NaN, ''μετατρέπει false. Για παράδειγμα,

  let result; result = Boolean(''); console.log(result); // false result = Boolean(0); console.log(result); // false result = Boolean(undefined); console.log(result); // false result = Boolean(null); console.log(result); // false result = Boolean(NaN); console.log(result); // false

Όλες οι άλλες τιμές δίνουν true. Για παράδειγμα,

  result = Boolean(324); console.log(result); // true result = Boolean('hello'); console.log(result); // true result = Boolean(' '); console.log(result); // true

Πίνακας μετατροπής τύπου JavaScript

Ο πίνακας δείχνει τη μετατροπή διαφορετικών τιμών σε String, Number και Boolean σε JavaScript.

Value String Conversion Number Conversion Boolean Conversion
1 "1" 1 true
0 "0" 0 false
"1" "1" 1 true
"0" "0" 0 true
"ten" "ten" NaN true
true "true" 1 true
false "false" 0 false
null "null" 0 false
undefined "undefined" NaN false
'' "" 0 false
' ' " " 0 true

Θα μάθετε για τη μετατροπή αντικειμένων και συστοιχιών σε άλλους τύπους δεδομένων σε μεταγενέστερα σεμινάρια.

Επισκεφτείτε αυτά τα παραδείγματα για να μάθετε περισσότερα:

  • Ημερομηνία JavaScript για αριθμούς
  • Ημερομηνίες JavaScript για χορδές

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