【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属性。

相关推荐
阿正的梦工坊8 分钟前
【Rust】07-错误处理:Option、Result 与 ? 运算符
开发语言·算法·rust
LiuJun2Son12 分钟前
Angular 快速入门:从零搭建你的第一个应用
前端·javascript·angular.js
烬羽12 分钟前
从零理解树与二叉树:用 JS 带你手撕遍历和递归
javascript·数据结构
Zella折耳根13 分钟前
复习篇-继承和接口
java·开发语言·python
z落落16 分钟前
C# 事件(Event)+自定义带参数事件例子
开发语言·分布式·c#
FlYFlOWERANDLEAF16 分钟前
DevExpress Office File API使用记录
开发语言·c#·devoffice
程序员二叉19 分钟前
【JVM】OOM详解+JVM参数+FullGC排查+CPU飙高+死锁+内存泄漏+命令大全
java·开发语言·jvm·面试
小徐_233320 分钟前
Wot UI 2.1.0 发布:ConfigProvider 全局配置能力升级
前端·uni-app
方白羽21 分钟前
Vibe Coding 四个核心阶段
android·前端·app
奶油话梅糖21 分钟前
浏览器解析 HTML 头部的底层逻辑:从字节流到资源调度
前端·html