打字稿数据类型问题

时间:2015-08-31 18:16:47

标签: typescript

我不熟悉打字稿。 有人可以解释下面的typescript字段selectedNames的数据类型。

class Doit { private selectedNames : { [level: number] : {[name: string]: boolean} } = {}; }

谢谢。

2 个答案:

答案 0 :(得分:0)

[level: number] : {[name: string]: boolean}是类型。它描述了字典模式

[level : number]是关键。 {[name: string]: boolean}是值, 在这种情况下,另一个词典字符串为bool。

比较http://www.typescriptlang.org/Handbook#interfaces-array-types

答案 1 :(得分:0)

selectedNames有一个对象类型。它有一个数字索引签名,为方便起见,我们称之为T。换句话说,selectedNames具有包含数字属性名称和T属性类型的属性。

T也是一种对象类型。 T具有字符串索引签名,其类型为boolean。换句话说,T具有字符串属性名称和boolean属性类型的属性。

= {}是一个初始化程序,它将空对象分配给类selectedNames的{​​{1}}属性。