js判断对象是否存在某个键值

方法一 in 操作符

使用方法:'XXX' in obj(对象),结果返回布尔值 true / false

javascript 复制代码
const obj = { name:'张三', sex:'男' }

'name' in obj  // true
'test' in obj  // false

方法二 hasOwnProperty方法

**使用方法:obj.hasOwnProperty(XXX),结果返回布尔值 true / false(**不包括原型链上的属性 )

javascript 复制代码
const obj = { name:'张三', sex:'男' }

obj.hasOwnProperty('name')  // true
obj.hasOwnProperty('test')  // false

方法三 直接判断

使用方法:obj.xxx !== undefined,结果返回布尔值 true / false

javascript 复制代码
const obj = { name:'张三', sex:'男' }

obj.name !== undefined // true
obj.test !== undefined // false

方法四 Object.keys()

使用方法:使用 Object.keys() 方法将对象转换为 数组格式(该方法只会拿到对象的键值key)

javascript 复制代码
const obj = { name:'张三', sex:'男' }
let newArr = Object.keys(obj)  // ['name', 'sex']

newArr.includes('name') // true
newArr.includes('test') // false
 

方法五 Reflect.has()

使用方法:Reflect.has(obj(对象), keyName(XXX)),结果返回布尔值 true / false

javascript 复制代码
const obj = { name:'张三', sex:'男' }

Reflect.has(obj, 'name')  // true
Reflect.has(obj, 'test')  // false
相关推荐
Stringzhua10 分钟前
JavaScript入门【3】面向对象
javascript
2501_9153738817 分钟前
Vue路由深度解析:Vue Router与导航守卫
前端·javascript·vue.js
小妖66622 分钟前
前端表格滑动滚动条太费事,做个浮动滑动插件
前端
读心悦29 分钟前
5000 字总结CSS 中的过渡、动画和变换详解
前端·css·tensorflow
__BMGT()33 分钟前
C++ QT 打开图片
前端·c++·qt
仍然探索未知中1 小时前
前端扫盲HTML
前端·html
Brilliant Nemo2 小时前
Vue2项目中使用videojs播放mp4视频
开发语言·前端·javascript
酷爱码2 小时前
Linux实现临时RAM登录的方法汇总
linux·前端·javascript
LuckyLay2 小时前
Vue百日学习计划Day16-18天详细计划-Gemini版
前端·vue.js·学习
想要飞翔的pig2 小时前
uniapp+vue3页面滚动加载数据
前端·vue.js·uni-app