Bewerkingen met objecten in functies in JavaScript

Laten we een functie aan het object toevoegen, die een nuttige bewerking zal uitvoeren. Bijvoorbeeld, die de som van de elementen van het object zal vinden.

Stel we hebben het volgende object:

javascriptlet obj = {a: 1, b: 2, c: 3};

Laten we een symbool creëren:

javascriptlet sym = Symbol();

We schrijven de functie:

javascriptobj[sym] = function() {
  
};

In de functie, gebonden aan het object, zal this verwijzen naar het object zelf:

javascriptobj[sym] = function() {
  console.log(this); // {a: 1, b: 2, c: 3}
};

Laten we met behulp van onze functie de som van de elementen van het object vinden:

javascriptobj[sym] = function() {
  let sum = 0;
  
  for (let key in this) {
    sum += this[key];
  }
  
  return sum;
};

Laten we onze functie aanroepen om de som van de elementen van het object te krijgen:

javascriptlet sum = obj[sym]();
console.log(sum); // geeft 6
Задание 1

Gegeven is een array:

javascriptlet arr = [1, 2, 3];

Voeg op de in de les beschreven manier een functie aan de array toe, die de som van de elementen van de array zal teruggeven.

Задание 2

Roep de gemaakte functie aan en verzeker je ervan dat deze correct de som vindt.

Задание 3

Voeg een paar elementen aan de array toe met behulp van de methode push. Verzeker je ervan dat de functie de som zal vinden rekening houdend met de nieuwe elementen.