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 类型键(即使可枚举)示例: 幻导航网 发现优质实用网站,开启网络探索之旅!
相关推荐
Decay__5 小时前
05_MySQL 常用 SQL 大全 —— 诊断、管理、优化辅助 SQL 与三大系统库速查代码山河7 小时前
Python就业方向全解析:后端、爬虫、数据分析、AI你选哪个?在世修行7 小时前
智学文枢:题目流水线梯度下降者8 小时前
零基础入门Python 爬虫小徐不徐说9 小时前
C++ 接口与插件设计:从工厂注册到 Qt 动态插件“AI国潮设计-小江”9 小时前
【AIGC实战】Python+Stable Diffusion打造“英歌舞财神”IP,解锁“马到成功”等爆款情绪营销文案设计论文复现现场10 小时前
WRF、FEA 能用 L40S 加速吗?求解器检查、断点恢复与长期运行benchmark_cc10 小时前
用 Python 拉 A 股全市场实时快照:Notebook 请求、结果校验与易错点伞伞悦读10 小时前
【第70期】Adam二阶矩不是方差:偏差校正、动量与AdamW完整实验Decay__10 小时前
04_MySQL DBA 日常运维手册 —— 会话管理、锁与阻塞、事务监控、慢查询与日志巡检