TypeScript 有用于输入对象的特定语法。
阅读有关我们的对象的更多信息JavaScript 对象章节。
const car: { type: string, model: string, year: number } = {
type: "Toyota",
model: "Corolla",
year: 2009
};
亲自试一试 »
像这样的对象类型也可以单独写,甚至可以复用,看一下接口更多细节。
TypeScript 可以根据属性的值推断其类型。
const car = {
type: "Toyota",
};
car.type = "Ford"; // no error
car.type = 2; // Error: Type 'number' is not assignable to type 'string'.
亲自试一试 »
可选属性是不必在对象定义中定义的属性。
const car: { type: string, mileage: number } = { // Error: Property 'mileage' is missing in type '{ type: string; }' but required in type '{ type: string; mileage: number; }'.
type: "Toyota",
};
car.mileage = 2000;
const car: { type: string, mileage?: number } = { // no error
type: "Toyota"
};
car.mileage = 2000;
亲自试一试 »
索引签名可用于没有定义属性列表的对象。
const nameAgeMap: { [index: string]: number } = {};
nameAgeMap.Jack = 25; // no error
nameAgeMap.Mark = "Fifty"; // Error: Type 'string' is not assignable to type 'number'.
亲自试一试 »
像这样的索引签名也可以用实用程序类型来表示,例如Record<string, number>
。
了解有关此类实用程序类型的更多信息TypeScript 实用程序类型章节。
截取页面反馈部分,让我们更快修复内容!也可以直接跳过填写反馈内容!