我有以下问题。假设我有一个类型:
type A = {
prop1: string,
prop2: {
prop3: string
}
}
我从外部服务接收到一些 JSON 对象,我想要验证这个 JSON 是否符合类型 A
:
function isA(obj:any): boolean {
// What should be here?
}
如果我的
obj
长这样:{
prop1: "Hello",
prop2: {
prop3: "World"
}
}
或者
{
prop1: "Hello",
prop2: {
prop3: "World"
},
moreProps: "I don't care about"
}
该函数会返回true,但对于像这样的内容会返回false。
{
foo: "Hello",
bar: {
prop3: "World"
}
}
什么是实现这一点的最简单方法?谢谢。