Symbol

coderljw 2024-10-13 JS 基础
  • JS 基础
  • Symbol
小于 1 分钟

# 1. Symbol(string)

  • 传入一个描述符返回 symbol 唯一值,不可枚举。
Symbol('clearlove7') === Symbol('clearlove7') // => false
Object.keys({ [Symbol('clearlove')]: 7 }) // => []
1
2

# 2. Symbol.for(string)

  • 搜索全局 symbol 注册表中的 symbol,找到返回此 symbol,未找到则新建一个 symbol 放入注册表中。
Symbol.for('clearlove7') === Symbol('clearlove7') // => false
Symbol.for('clearlove7') === Symbol.for('clearlove7') // => true
1
2

# 3. Symbol.keyFor(symbol)

  • 查找全局 symbol 注册表中的 symbol,找到返回描述符,未找到返回 undefined。
Symbol.keyFor(Symbol.for('clearlove7')) // => 'clearlove7'
Symbol.keyFor(Symbol('jacklove')) // => undefined
1
2
以父之名
周杰伦.mp3