Globaalsed sümbolid JavaScriptis

Meetodi Symbol.for abil saab luua nimega sümboleid. Need sümbolid salvestatakse globaalsesse sümbolite registrisse ja neile pääseb ligi koodi igast kohast.

Vaatame, kuidas see töötab. Loome ühes funktsioonis sümboli:

javascriptfunction func1() {
  let sym = Symbol.for('test');
  return sym;
}

Nüüd saame teises funktsioonis sellele sümbolile ligi tema nime järgi:

javascriptfunction func2() {
  let sym = Symbol.for('test');
  return sym;
}

Kontrollime, et mõlemas funktsioonis on üks ja sama sümbol. Kutsume meie funktsioonid välja:

javascriptlet sym1 = func1();
let sym2 = func2();

Võrdleme sümboleid:

javascriptconsole.log(sym1 === sym2); // true
Задание 1

Olgu teil mitu objekti. Lisage igale neist võti sümboli kujul nimega 'sum'. Pange sellesse võtme funktsioon, mis tagastab objekti elementide summa.