TS系列教程七:symbol

85 阅读1分钟

定义

Symbol是es6中引入的一种原始类型,和字符串类似,表示唯一的值

Symbol('hello')===Symbol('hello');//false

TS中的symbol

ts中的唯一值类型有两个:symbol和unique symbol,两者的区别我们能感受到的大概只有定义方式不同

let a:symbol=Symbol();
const a:symbol=Symbol();
const a:unique symbol=Symbol();
let a:unique symbol=Symbol();//报错

因为ts的类型推导,我们都会这样写

let a=Symbol();//symbol
const a=Symbol();//unique symbol

如果想继承另一个symbol类型可以使用typeof,当然在实际开发中感觉没有什么意义

const a=Symbol();
const b:typeof a=a;