我有一个如下的对象文字(所有属性在编译时都是已知的):
const foo = {
"hello": "hola"
};
如果foo
是一个接口而不是一个变量,我可以很容易地做如下事情
/** THEORETICAL ONLY - Does not compile! */
function translate(input: keyof foo): string {
return foo[input];
}
但是,使用变量这样做不起作用,因为编译器找不到名为foo
的接口.
Typescript是否支持对编译时已知值的对象文本执行keyof
次操作?