ES6 - Symbol.for ()
Questa funzione crea un simbolo e aggiunge al registro. Se il simbolo è già presente nel registro restituirà lo stesso; altrimenti viene creato un nuovo simbolo nel registro globale dei simboli.
Sintassi
Symbol.for(key)
dove, key è il identifier del simbolo
Esempio
L'esempio seguente mostra la differenza tra Symbol() e Symbol.for()
<script>
const userId = Symbol.for('userId') // creates a new Symbol in registry
const user_Id = Symbol.for('userId') // reuses already created Symbol
console.log(userId == user_Id)
const studentId = Symbol("studentID") // creates symbol but not in registry
const student_Id = Symbol.for("studentID")// creates a new Symbol in registry
console.log(studentId == student_Id)
</script>
L'output del codice sopra sarà come mostrato di seguito -
true
false