ES6 - Symbol.for()



此函数创建一个符号并将其添加到注册表中。如果符号已存在于注册表中,则返回相同的符号;否则,将在全局符号注册表中创建一个新的符号。

语法

Symbol.for(key) 

其中,key 是符号的标识符

示例

以下示例显示了Symbol()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>

上述代码的输出将如下所示:

true
false
广告