Object.keys只返回对象自身可枚举的字符串键,Object.getOwnPropertyNames返回所有自身字符串键(含不可枚举),二者均不包含Symbol键和原型链属性。Object.keys 和 Object.getOwnPropertyNames 都能获取对象的键名,但它们的行为有关键区别:前者只返回**可枚举属性**,后者返回**所有自身属性(包括不可枚举的)**。遍历键名时选哪个,取决于你是否需要访问如 toString、constructor 这类内置不可枚举属性,或你自己用 Object.defineProperty 设置的 enumerable: false 属性。用 Object.keys 遍历可枚举键名这是最常用的方式,适合日常开发中处理普通对象、JSON 数据、配置项等场景。它返回一个字符串数组,可直接配合 for...of、forEach 或展开运算符使用。只包含对象自身的、且 enumerable === true 的属性 不包含原型链上的属性(如 hasOwnProperty) 不包含 Symbol 类型键(即使可枚举)示例: 幻导航网 发现优质实用网站,开启网络探索之旅!
相关推荐
PieroPc20 小时前
CAMWATCH — 局域网摄像头监控系统 Fastapi + htmlfeasibility.20 小时前
反爬十层妖塔:现代爬虫攻防的立体战争数据库小学妹20 小时前
数据库连接池避坑指南:告别“连接超时”与“资源耗尽”,让系统跑得更快!十八旬20 小时前
快速安装ClaudeCode完整指南dishugj21 小时前
HANA 数据库备份与恢复前进的李工21 小时前
EXPLAIN输出格式全解析:JSON、TREE与可视化難釋懷21 小时前
Redis网络模型-IO多路复用模型-poll模式dFObBIMmai21 小时前
如何在 CSS 中实现元素的绝对定位,使其不受窗口尺寸变化影响WL_Aurora21 小时前
Python 算法基础篇之集合treesforest1 天前
IP精准定位服务:从城市轮廓到街道坐标,技术如何重塑空间感知