【发布时间】:2022-01-18 17:57:49
【问题描述】:
对于 typescript 接口,我只想包含我在接口本身中声明的键。
我定义了一个Person接口如下:
interface Person {
name: string
surname: string
}
在另一个 sn-p 中,我收到如下 json:
let personFromServer = {
name: "myName",
surname: "mySurname",
age: 16
}
let p : Person = personFromServer;
console.log("I wish p to have only name and surname", p)
当我记录 p 变量时,我只想拥有
{
name: "myName"
surname: "mySurname"
}
但我也得到了年龄字段:
{
name: "myName"
surname: "mySurname"
age: 16
}
是否可以在本地完成我想要的结果,换句话说,只是包含想要的键(并忽略额外的键,导致信息溢出)?
提前谢谢你。
【问题讨论】:
-
接口是编译时构造;它们在运行时不存在。因此,当您的代码获取该对象时,该接口早已不复存在。您可以创建一个
class,它将一个对象作为构造函数参数并将其属性设置为同名对象的属性(也有库这样做)。
标签: typescript interface