Από πού προέρχονται οι μέθοδοι (π.χ., .toString() κ.λπ.) στους primitive τύπους δεδομένων;
sobes.tech AI
Απάντηση από AI
Οι πρωταρχικοί τύποι δεδομένων στο JavaScript (αλυσίδες, αριθμοί, boolean τιμές, Symbol, BigInt, null, undefined) στην πραγματικότητα δεν έχουν μεθόδους. Ωστόσο, όταν προσπαθούμε να καλέσουμε μια μέθοδο σε μια πρωταρχική τιμή, η JavaScript την περικλείει προσωρινά στο αντίστοιχο αντικείμενο-περιτύλιγμα (String, Number, Boolean, Symbol, BigInt).
Για παράδειγμα, καλώντας .toString() στη συμβολοσειρά 'hello', η JavaScript δημιουργεί ένα προσωρινό αντικείμενο new String('hello'), καλεί τη μέθοδο toString() αυτού του αντικειμένου και στη συνέχεια καταστρέφει το προσωρινό αντικείμενο. Αυτός ο μηχανισμός ονομάζεται autoboxing ή αυτόματη συσκευασία.
Οι τύποι δεδομένων null και undefined δεν έχουν αντίστοιχα αντικείμενα-περιτύλιγμα και επομένως δεν μπορούν να έχουν μεθόδους. Η προσπάθεια να καλέσετε μια μέθοδο σε null ή undefined θα οδηγήσει σε σφάλμα TypeError.