结果类型的对象文字

时间:2017-05-28 19:41:26

标签: typescript specifications

来自规范:

当对象文字由包含字符串索引签名的类型进行上下文类型化时,对象文字的结果类型包括字符串索引签名,其中联合类型为对象文字中声明的属性的类型,如果对象文字为空,则为未定义类型

它是什么意思 - 对象文字的结果类型

我们说

var a:{[key:string]:any} = {a:1,b:"2"};

a的类型为{[key:string]:any}

此声明中对象文字的结果类型在哪里?

代码中是否有任何地方可以看到生成的对象文字类型?

1 个答案:

答案 0 :(得分:1)

  

代码中是否有任何地方可以看到生成的对象文字类型?

以下代码示例

declare const str: 'a' | 'b';
let foo = { a: 1, b: "2" }[str]; // typeof foo is string | number