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
相关推荐
R-sz3 分钟前
UE5.4 打包报错 error C4668 C4067
java·前端·ue5
Nuopiane6 分钟前
Pal3.Unity开源项目复刻(八)其余
java·服务器·前端
无知的小菜鸡19 分钟前
React 零散知识记录
前端·react.js·前端框架
whosTTQ20 分钟前
claude code 通过项目git提交记录生成自画象
前端
CHU72903536 分钟前
便捷点餐,随心畅享——外卖点餐小程序前端功能详解
前端·小程序
Data_Adventure37 分钟前
2025–2026 Three.js 有哪些重要更新?Web 3D 正在进入 WebGPU 时代
前端·three.js
全栈老石37 分钟前
再见 Moment.js!浏览器原生支持的新一代时间库 Temporal 来了
前端·javascript
周淳APP38 分钟前
【HTTP之浏览器缓存及渲染】
前端·网络·网络协议·http·缓存
叫我一声阿雷吧1 小时前
JS 入门通关手册(13):DOM 基础入门:用 JavaScript 操作网页元素,让页面 “活” 起来!
javascript·dom操作·js入门·零基础学前端·网页交互
我命由我123451 小时前
React - React 初识、创建虚拟 DOM 的两种方式、jsx 语法规则、React 定义组件
前端·javascript·react.js·前端框架·html·html5·js