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 类型键(即使可枚举)示例: 幻导航网 发现优质实用网站,开启网络探索之旅!
相关推荐
Sirius.z20 小时前
第R6周:LSTM实现糖尿病探索与预测名字还没想好☜20 小时前
Python f-string 进阶:数字格式化、对齐填充、调试 = 号与嵌套表达式ltl21 小时前
Serverless 数据库弹性理论:Neon 与 Aurora Serverless v2·薯条大王21 小时前
经济实惠玩云服务器|一台云服务器多人共用,子账号配置教程Dxy12393102161 天前
Python 如何使用 MySQL 的事务marvelyu1 天前
每天10分钟学会OceanBase系列(Day 20):跨机房容灾实战——构建多数据中心高可用架构ZCBUS实时计算1 天前
金融证券实时数仓建设实践:轻量化实时计算平台落地,实现交易数据端到端秒级处理zd2005721 天前
海洋微生物数据库今儿敲了吗1 天前
Python ——第三方包麒麟水手1 天前
国产银河麒麟系统开发实录:跑通Streamlit,我踩过的6个坑