我不知道大家是怎么使用索引類型的,我是一次想實(shí)現(xiàn)HashMap時(shí)接觸到了索引類型。
索引類型大約是這樣的:
{
[idx: string|number]:any
}
方括號(hào)里面是索引的類型,類似于hashmap里面的key,支持兩種索引簽名:字符串和數(shù)字。 可以同時(shí)使用兩種類型的索引,但是數(shù)字索引的返回值必須是字符串索引返回值類型的子類型。 這是因?yàn)楫?dāng)使用 number來索引時(shí),JavaScript會(huì)將它轉(zhuǎn)換成string然后再去索引對(duì)象。 也就是說用 100(一個(gè)number)去索引等同于使用"100"(一個(gè)string)去索引,因此兩者需要保持一致。
右邊的類型簽名,類似于hashmap里面的value。
例如:
var userInfo: {[index:string]: string} = {}
userInfo["name"] = "typescript"
userInfo["age"] = "14"
console.log("user name is ", userInfo["name"])
console.log("user age is ", userInfo["age"])
更多內(nèi)容,歡迎加入Chat:http://gitbook.cn/gitchat/activity/5a6043750b6ffc7ace5faf48
TypeScript快速入門
如何用Python爬取網(wǎng)頁制作電子書