符号(Symbol)是JavaScript中引入的一种新的原始数据类型。它们的主要特点是独一无二性,每个符号都是唯一的,不会与其他任何值相等。符号提供了一种创建非字符串属性键的方式,这些属性键不会与现有属性键冲突。
在JavaScript中,我们通常使用字符串作为对象属性的键。然而,字符串键是可变的,可能会导致冲突或覆盖现有属性。为了解决这个问题,符号被引入为一种不可变且唯一的属性键。
创建符号
要创建一个符号,可以使用全局Symbol函数,它接受一个可选的描述字符串作为参数。描述字符串只是一个可选的标识符,用于调试和识别目的。
下面是创建和使用符号的示例代码:
// 创建一个符号
const mySymbol = Symbol();
// 创建一个带有描述的