我想知道是否有一种很好的方式来获得符号的描述.
例如,
var s = Symbol(5);
toString的默认实现将只是打印
符号(5)
我想找到一种方法来提取实际的描述,即5
解决方法:
String(symbol).slice(7, -1) || null
这是有效的,因为String(符号)明确地将符号强制转换为字符串,例如符号(‘test’)被强制转换为“符号(测试)”.
在7到-1之间进行拼接会在两个括号之间进行拼接,从而捕获描述测试
注意:这可能不适用于对象描述(例如符号({test})),因为对象被强制转换为“[object Object]”