我想访问字符串文字类型的字符串值,类似于C#中的typeof运算符,否则我必须定义两次...
myStringLiteral: 'STRING TYPE';
myString:string = typeof(myStringLiteral); // Want myString = 'STRING TYPE'...
或者,如果可能相反:
const myString:string = 'STRING TYPE';
myStringLiteral: myString;
答案 0 :(得分:2)
您不必使用显式类型注释来让编译器推断常量的字符串文字类型(或手动指定字符串文字类型,而不是string
)。
如果您正确键入了myString
常量,则可以使用typeof
在类型注释或类型定义中获取常量的类型:
const myString = 'STRING TYPE'; // typed as 'STRING TYPE'
type myStringLiteral = typeof myString; // myStringLiteral is 'STRING TYPE'
let otherVar: typeof myString;