Junior
Ποια είναι η διαφορά μεταξύ της μεθόδου map και ενός κανονικού αντικειμένου στη JavaScript;
sobes.tech AI
Απάντηση από AI
// Η μέθοδος map() για πίνακες δημιουργεί έναν νέο πίνακα
// εφαρμόζοντας μια λειτουργία μετασχηματισμού σε κάθε στοιχείο του αρχικού πίνακα.
const array = [1, 2, 3];
const newArray = array.map(item => item * 2);
// newArray θα είναι [2, 4, 6]
Κοινό αντικείμενο JavaScript:
// Είναι ένα μη ταξινομημένο σύνολο ζευγών κλειδιού-τιμής.
// Τα κλειδιά είναι είτε συμβολοσειρές είτε Symbol.
const object = {
a: 1,
b: 2,
c: 3
};
// Η σειρά των ιδιοτήτων δεν είναι εγγυημένη.
Διαφορές:
| Χαρακτηριστικό | Array.prototype.map() |
Κοινό αντικείμενο |
|---|---|---|
| Σκοπός | Μετασχηματισμός στοιχείων πίνακα και δημιουργία νέου πίνακα. | Αποθήκευση μη ταξινομημένου συνόλου δεδομένων κατά κλειδιά. |
| Τύπος | Μέθοδος πίνακα. | Δομή δεδομένων. |
| Επαναληψιμότητα | Δημιουργεί νέο επαναλαμβανόμενο πίνακα. | Δεν είναι από προεπιλογή επαναλαμβανόμενο με την σειρά εισαγωγής. |
| Κλειδιά | Λειτουργεί με στοιχεία πίνακα κατά δείκτη. | Λειτουργεί με κλειδιά που είναι συμβολοσειρές ή Symbol. |
| Σειρά | Διατηρεί την σειρά των αρχικών στοιχείων. | Η σειρά των ιδιοτήτων δεν εγγυάται μέχρι το ES2015, μετά εγγυάται για μη αριθμητικά κλειδιά. |
| Απόδοση | Βελτιστοποιημένο για επανάληψη και μετασχηματισμό πινάκων. | Εξαρτάται από την υλοποίηση του JS engine και τον αριθμό των ιδιοτήτων. |