考核内容: Symbol和Symbol.for创建变量的区别
题发散度: ★
试题难度: ★
解题思路:
symbol 是一种基本数据类型 (primitive data type)。Symbol()函数会返回symbol类型的值.
每个从Symbol()返回的symbol值都是唯一的。一个symbol值能作为对象属性的标识符;这是该数据类型仅有的目的。
Symbol.for函数会根据参数名,去全局环境中搜索是否有以该参数为名的symbol值,有就返回它,没有就以该参数名来创建一个新的symbol值,并登记在全局环境中,而Symbol每次都会创建一个独一无二的值,不会登记在全局环境中.
参考代码:
答案:
A、Symbol.for('name') == Symbol.for('name')