TypeScript入门教程(十) - Symbols

自ECMAScript 2015(ES6)起,symbol成为了一种新的原生类型,就像number和string一样
介绍
symbol类型的值是通过Symbol构造函数创建的
let sym1 = Symbol();
let sym2 = Symbol("key"); // 可选的字符串key
需要注意的是symbol是唯一的
像字符串一样,symbols也可以被用做对象属性的键,也可以计算出的属性名声明相结合来声明对象的属性和类成员
let sym = Symbol();
let obj = {
[sym]: "value"
};
console.log(obj[sym]); // "value"
const getClassNameSymbol = Symbol();
class C {
[getClassNameSymbol](){
return "C";
}
}
let c = new C();
let className = c[getClassNameSymbol](); // "C"
更多Symbols用法建议查看阮一峰ES6里面写的很详细
上面我们介绍了TypeScript的Symbols,第十一节我们将介绍迭代器和生成器
文章参考TypeScript中文网