符号原始类型的基础知识
Symbol 是 ES6 中的一种新的原始类型。符号主要用作属性键,其主要特征之一是它们是唯一的,即使它们具有相同的描述。这意味着他们永远不会与任何其他属性键(即 symbol 或 string)发生冲突。
const MY_PROP_KEY = Symbol();
const obj = {};
obj[MY_PROP_KEY] = "ABC";
console.log(obj[MY_PROP_KEY]);
在这个例子中,console.log 的结果将是 ABC。
你还可以将符号命名为:
const APPLE = Symbol('Apple');
const BANANA = Symbol('Banana');
const GRAPE = Symbol('Grape');
这些值中的每一个都是唯一的,无法覆盖。
在创建原始符号时提供可选参数 (description) 可用于调试但不能访问符号本身(但请参阅 Symbol.for() 示例以了解注册/查找全局共享符号的方法)。