![](/img/trans.png)
[英]What does the <var> syntax in Angular / Typescript mean?
[英]What does this Typescript syntax mean
export declare type SomeType = {
[key: string] : string
};
這個語法到底是什么意思? 我們正在導出一個名為 SomeType 的自定義類型別名,它是一個具有名為 ____ 且值為 ____ 的屬性的對象?
這意味着SomeType
類型的對象只能具有帶有字符串值的字符串屬性:
例子:
// Valid
{
firstName: 'John',
lastName: 'Smith'
},
// Invalid
{
firstName: 'John',
age: 10
}
這種語法稱為索引簽名。
這是一個鍵/值結構。 鍵是字符串,值是字符串
SomeType = {
'a-string-key' : 'a-string-value'
};
基本上,Typescript 是 javascript 的靜態類型版本。 在這種情況下,我們有一個名為SomeType
的類型,它是一個對象。 我們還以這種方式提及對象的key
和value
類型 - [key: string]: string
。
在您的情況下, SomeType
將只接受字符串的key
和字符串的value
。 否則,它會拋出一個類型錯誤。
例如: { "name": "user"}
是有效的,而{"name" : 10 }
是無效的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.