Símbolos Globais em JavaScript
Usando o método Symbol.for
você pode criar símbolos com um nome.
Esses símbolos serão salvos no
registro global de símbolos
e o acesso a eles poderá ser obtido
de qualquer lugar do código.
Vamos ver como isso funciona. Em uma função, vamos criar um símbolo:
function func1() {
let sym = Symbol.for('test');
return sym;
}
Agora, em outra função, vamos obter acesso a esse símbolo pelo seu nome:
function func2() {
let sym = Symbol.for('test');
return sym;
}
Vamos verificar se ambas as funções contêm o mesmo símbolo. Vamos chamar nossas funções:
let sym1 = func1();
let sym2 = func2();
Vamos comparar os símbolos:
console.log(sym1 === sym2); // true
Suponha que você tenha vários objetos.
Adicione a cada um deles uma chave na forma de
um símbolo com o nome 'sum'.
Crie neste chave uma função,
que retornará a soma
dos elementos do objeto.