Symbol类型

:::info 为了扩展内置对象,以防止命名冲突。 :::

静态属性和方法

Symbol类型 - 图1 :::info Symbol类型中的静态属性,属性值就是符号。例如:Symbol.hasInstance属性的值是符号Symbol(‘Symbol.hasInstance’)。 :::

实例化对象

Symbol类型 - 图2

注释说明

Symbol.replace

  1. const rep = {
  2. [Symbol.replace](string) {
  3. return `33${string}`;
  4. }
  5. }
  6. console.log('chen'.replace(rep)); //'chen33'

参考

https://hacks.mozilla.org/2015/06/es6-in-depth-symbols/