微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JavaScript 如何判断属性是不是对象的属性

in操作符: 查找对象中属性是不是存在,如果存在,返回true,如果不存在,返回false

console.log("name" in person5);//判断name属性在对象person5中是否存在

 

hasOwnproperty(): 查找对象中的属性是不是在这个对象中定义的

console.log(pson1.hasOwnProperty("name"));//判断属性name是不是pson1对象的自有属性(该属性在pson1中定义的)

 

为什么不用if进行判断

当if判断中的值是一个对象、非空字符串、非零数字或true时,判断会评估为真;而当值是一个null、undefined、0、false、NaN或空字符串时评估为假。由于一个对象属性可以包含这些假值,上例代码有可能导致错误的假定。例如,当person1.age为0时,虽然age属性存在,if条件仍然无法满足。

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐