Operasies met objekte in funksies in JavaScript

Laat ons 'n funksie by die objek voeg, wat 'n nuttige operasie sal uitvoer. Byvoorbeeld, dit sal die som van die elemente van die objek vind.

Kom ons het 'n objek:

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

Skep 'n simbool:

javascriptlet sym = Symbol();

Skryf die funksie neer:

javascriptobj[sym] = function() {
  
};

In die funksie, gebind aan die objek, sal this verwys na die objek self:

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

Vind die som van die elemente van die objek met behulp van ons funksie:

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

Roep ons funksie aan, kry die som van die elemente van die objek:

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

Gegee 'n skikking:

javascriptlet arr = [1, 2, 3];

Voeg volgens die metode wat in die les beskryf is 'n funksie by die skikking wat die som van die elemente van die skikking sal teruggee.

Задание 2

Roep die geskepte funksie aan en maak seker dat dit die som korrek vind.

Задание 3

Voeg 'n paar elemente by die skikking met behulp van die metode push. Maak seker dat die funksie die som sal vind met inagneming van die nuwe elemente.