是否可以判断继承的对象属性是设置为未定义还是根本不存在?
我有一个带有属性名称的格式化字符串,以及一个预期包含该属性的对象。我不关心属性是对象自己还是继承属性,我需要知道它是否存在所以我可以使用它,即使它被设置为未定义,但如果它根本不存在,我需要抛出错误。
我知道这个主题有多少次跳舞,并且有很多关于使用的意见:
if(prop in obj){
}
和这一个:
obj.hasOwnProperty(prop)
虽然我显然不能使用第二种方法,但是当涉及到所有可能的属性值时,第一种方法似乎不可靠。
是否有可靠的方法来检查对象内部或继承的特定属性是否存在,即使其值设置为0或null或未定义?