2
如何註釋此對象,以便在嘗試訪問不存在的屬性時收到編譯器錯誤或警告?如何使用空格安全地訪問對象屬性(JSONP屬性,如「First Name」:「...」)
{
"Id": 1
"First Name": "Lorem",
"Last Name": "Ipsum",
}
我已經使用這個定義註釋此對象:
interface Person{
Id: number;
"First Name": string;
"Last Name": string;
}
然而
,我還是不能夠安全地訪問「名」的性質,因爲訪問的唯一方法是:
var person : Person = ...;
var firstName = person["First Name"];
不僅這個返回的任何,但它允許訪問未定義的屬性,如person['bla bla']
沒有編譯器錯誤。
是的,我必須使用這種格式,因爲我沒有擁有數據。當我註釋象我這樣的對象時,用引號,typescript驗證賦值如'var person:Person = {...}' – Liero
是的,這種賦值檢查屬性,就像使用點符號('person.FirstName ')。我不知道如何使用它作爲索引('person [「First Name」]')來使編譯器驗證屬性名稱,但也許其他人知道如何。 –