【js】如何判断对象是否存在某个属性

我们先假设这个对象是obj,需要判断的属性是age。

(1)️obj.hasOwnProperty('age')⽅法:该⽅法返回⼀个布尔值,存在age就返回true,否则返回false。这个⽅法只判断⾃身上的属性,不会去查找原型上是否有age属性。

(2)判断obj.age != undefined 或 obj['age'] != undefined:如果对象上不存在age属性,则返回

undefined。它会从⾃身和其原型链上找这个age属性。注意:该⽅法不能⽤在对象的属性值存在但属性

值为 undefined 的场景下,⽐如obj⾥有age属性,age的值是undefined,那么此时obj.age就等于

undefined,这时我们不能就认为没有age属性,实际这个属性是存在的,只是它的值和我们判断的标准

⼀致了。

(3)运⽤ in 运算符:该⽅法和第⼆种⽅式⼀样,会从⾃身和原型链上查找属性。如果'age' in obj返回的是true,那么说明在这个对象或者其原型链中存在age属性。

相关推荐
笃行客从不躺平1 分钟前
遇到大SQL怎么处理
java·开发语言·数据库·sql
郝学胜-神的一滴1 分钟前
Python中常见的内置类型
开发语言·python·程序人生·个人开发
A***071711 分钟前
React数据可视化应用
前端·react.js·信息可视化
g***B73824 分钟前
Kotlin协程在Android中的使用
android·开发语言·kotlin
火白学安全29 分钟前
《Python红队攻防零基础脚本编写:进阶篇(一)》
开发语言·python·安全·web安全·网络安全·系统安全
爱码小白31 分钟前
PyQt5 QTimer总结
开发语言·qt
A***279537 分钟前
Kotlin反射机制
android·开发语言·kotlin
泉城老铁40 分钟前
Vue2实现语音报警
前端·vue.js·架构
E***q53941 分钟前
C++内存对齐优化
开发语言·c++
q***d1731 小时前
Kotlin在后台服务中的框架
android·开发语言·kotlin