Operacje na obiektach w funkcjach w JavaScript
Dodajmy do obiektu funkcję, która będzie wykonywać pewną użyteczną operację. Na przykład, będzie znajdować sumę elementów obiektu.
Załóżmy, że mamy obiekt:
javascriptlet obj = {a: 1, b: 2, c: 3};
Stwórzmy symbol:
javascriptlet sym = Symbol();
Zapiszmy funkcję:
javascriptobj[sym] = function() {
};
W funkcji powiązanej z obiektem
this będzie wskazywać na sam
obiekt:
javascriptobj[sym] = function() {
console.log(this); // {a: 1, b: 2, c: 3}
};
Znajdźmy za pomocą naszej funkcji sumę elementów obiektu:
javascriptobj[sym] = function() {
let sum = 0;
for (let key in this) {
sum += this[key];
}
return sum;
};
Wywołajmy naszą funkcję, otrzymując sumę elementów obiektu:
javascriptlet sum = obj[sym]();
console.log(sum); // wyświetli 6
Задание 1
Dana jest tablica:
javascriptlet arr = [1, 2, 3];
Opisanym w lekcji sposobem dodaj do tablicy funkcję, która będzie zwracać sumę elementów tablicy.
Задание 2
Wywołaj utworzoną funkcję i upewnij się, że poprawnie znajduje sumę.
Задание 3
Dodaj do tablicy kilka elementów
za pomocą metody push.
Upewnij się, że funkcja będzie znajdować
sumę uwzględniając nowe elementy.