Λειτουργίες με αντικείμενα σε συναρτήσεις σε JavaScript
Ας προσθέσουμε σε ένα αντικείμενο μια συνάρτηση, η οποία θα εκτελεί μια ορισμένη χρήσιμη λειτουργία. Για παράδειγμα, θα βρίσκει το άθροισμα των στοιχείων του αντικειμένου.
Ας υποθέσουμε ότι έχουμε το αντικείμενο:
javascriptlet obj = {a: 1, b: 2, c: 3};
Δημιουργούμε ένα σύμβολο:
javascriptlet sym = Symbol();
Γράφουμε τη συνάρτηση:
javascriptobj[sym] = function() {
};
Στη συνάρτηση, που είναι δεσμευμένη στο αντικείμενο,
το this θα δείχνει στο ίδιο
το αντικείμενο:
javascriptobj[sym] = function() {
console.log(this); // {a: 1, b: 2, c: 3}
};
Βρίσκουμε χρησιμοποιώντας τη συνάρτησή μας το άθροισμα των στοιχείων του αντικειμένου:
javascriptobj[sym] = function() {
let sum = 0;
for (let key in this) {
sum += this[key];
}
return sum;
};
Καλούμε τη συνάρτησή μας, παίρνοντας το άθροισμα των στοιχείων του αντικειμένου:
javascriptlet sum = obj[sym]();
console.log(sum); // θα εμφανίσει 6
Δίνεται ένας πίνακας:
javascriptlet arr = [1, 2, 3];
Με τον τρόπο που περιγράφηκε στο μάθημα προσθέστε στον πίνακα μια συνάρτηση, η οποία θα επιστρέφει το άθροισμα των στοιχείων του πίνακα.
Καλέστε τη δημιουργημένη συνάρτηση και βεβαιωθείτε, ότι βρίσκει σωστά το άθροισμα.
Προσθέστε στον πίνακα πολλά στοιχεία
χρησιμοποιώντας τη μέθοδο push.
Βεβαιωθείτε ότι η συνάρτηση θα βρίσκει
το άθροισμα λαμβάνοντας υπόψη τα νέα στοιχεία.