Objektų operacijos su funkcijomis JavaScript

Pridėkime prie objekto funkciją, kuri atliks tam tikrą naudingą operaciją. Pavyzdžiui, ras objekto elementų sumą.

Tarkime, kad turime objektą:

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

Sukurkime simbolį:

javascriptlet sym = Symbol();

Aprašykime funkciją:

javascriptobj[sym] = function() {
  
};

Funkcijoje, pririštoje prie objekto, this rodys į patį objektą:

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

Raskime naudodami mūsų funkciją objekto elementų sumą:

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

Iškvieskime mūsų funkciją, gaudami objekto elementų sumą:

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

Duotas masyvas:

javascriptlet arr = [1, 2, 3];

Pamokoje aprašytu būdu pridėkite prie masyvo funkciją, kuri grąžins masyvo elementų sumą.

Задание 2

Iškvieskite sukurtą funkciją ir įsitikinkite, kad ji teisingai randa sumą.

Задание 3

Pridėkite prie masyvo kelis elementus naudodami metodą push. Įsitikinkite, kad funkcija ras sumą atsižvelgdama į naujus elementus.