我具有此功能,用于测试对象是否具有某些字段
validateServerResponseStructure(res: any) {
let isTypeCorrect: boolean = (
res.result != undefined) && (res['additional-info'] != undefined
);
return isTypeCorrect;
}
是否可以测试res
仅具有result
和additional-info
属性,而没有其他方法?
答案 0 :(得分:2)
只需检查其keys
的长度正好是两个。另外,如果要确保属性不是undefined
,可能最好使用严格相等比较:
validateServerResponseStructure(res: any) {
let isTypeCorrect: boolean = (
res.result !== undefined
&& res['additional-info'] !== undefined
&& Object.keys(res).length === 2
);
return isTypeCorrect;
}
在不寻常的情况下,您可能具有包含undefined
值的属性,并且想要允许这些值,请检查键的长度以及result
和{{1} }包含在键中:
additional-info