【发布时间】:2021-08-14 03:31:36
【问题描述】:
我从网络接收一个对象并将其存储在一个数组中。但是,并非所有属性都在输入中设置。令我惊讶的是,虽然属性不是可选的。
interface Person {
name: string;
age: number;
}
const tasks: Person[] = [];
tasks.push(JSON.parse('{"name": "Johannes"}'));
console.log(tasks);
我希望缺少的属性具有默认值。我可以使用如下代码:
const person: Person = tasks[0];
if (!("age" in person)) person!.age = 65;
但这很难看,因为它对属性名称进行了硬编码。有没有优雅的 解决办法?
【问题讨论】:
标签: typescript