2
このオブジェクトに注釈を付けると、存在しないプロパティにアクセスしようとするとコンパイラエラーまたは警告が表示されます。スペースでオブジェクトプロパティに安全にアクセスする方法( "First Name"のようなJSONPプロパティ: "...")
{
"Id": 1
"First Name": "Lorem",
"Last Name": "Ipsum",
}
私は、この定義を使用して、このオブジェクトを注釈を付けました。それにアクセスするための唯一の方法であるため
interface Person{
Id: number;
"First Name": string;
"Last Name": string;
}
は、しかし、私は、まだ安全に「名」プロパティにアクセスすることはできませんよ:コンパイラエラーなしperson['bla bla']
のように、これはいずれかを返しますが、それは未定義のプロパティにアクセスすることを可能にすることを
var person : Person = ...;
var firstName = person["First Name"];
ないだけ。
はい、私はデータを所有していないので、その形式を使用する必要があります。 'var person:Person = {...} 'のような代入を検証します。 – Liero
はい、この種の代入は、ドット表記(' person.FirstName ')。私はあなたがインデックス( 'person [" First Name "]')としてそれを使用するときコンパイラがプロパティ名を検証する方法を知らないが、他の誰かがここでどのように知っているか知っている。 –