Symbol
coderljw 2024-10-13 小于 1 分钟
# 1. Symbol(string)
- 传入一个描述符返回 symbol 唯一值,不可枚举。
Symbol('clearlove7') === Symbol('clearlove7') // => false
Object.keys({ [Symbol('clearlove')]: 7 }) // => []
1
2
2
# 2. Symbol.for(string)
- 搜索全局 symbol 注册表中的 symbol,找到返回此 symbol,未找到则新建一个 symbol 放入注册表中。
Symbol.for('clearlove7') === Symbol('clearlove7') // => false
Symbol.for('clearlove7') === Symbol.for('clearlove7') // => true
1
2
2
# 3. Symbol.keyFor(symbol)
- 查找全局 symbol 注册表中的 symbol,找到返回描述符,未找到返回 undefined。
Symbol.keyFor(Symbol.for('clearlove7')) // => 'clearlove7'
Symbol.keyFor(Symbol('jacklove')) // => undefined
1
2
2