Globalni simboli u JavaScript-u

Pomoću metode Symbol.for možemo kreirati simbole sa imenom. Ovi simboli će biti sačuvani u globalni registar simbola i pristup im se može dobiti iz bilo kog dela koda.

Pogledajmo kako ovo funkcioniše. U jednoj funkciji kreirajmo simbol:

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

Sada u drugoj funkciji dobićemo pristup ovom simbolu po njegovom imenu:

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

Proverimo da li obe funkcije sadrže isti simbol. Pozovimo naše funkcije:

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

Uporedimo simbole:

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

Neka imate nekoliko objekata. Dodajte svakom od njih ključ u vidu simbola sa imenom 'sum'. Napravite u ovom ključu funkciju, koja će vraćati sumu elemenata objekta.