JavaScript中如何仅输出JSON解析后对象的键名而不输出其对应属性内容
问题解决方法
可以实现,直接使用JavaScript内置的Object.keys()方法即可获取JSON解析后对象的所有顶层键名,不会带出下层属性内容。
可用代码示例
在你现有代码的基础上补充以下逻辑即可:
const names = ` { "Joe": { "nat": "American", "hair": "brown" }, "Peter": { "nat": "German", "hair": "blond" } } `; const load = JSON.parse(names); // 获取所有顶层键组成的数组 const topKeys = Object.keys(load); // 输出所有顶层键 console.log(topKeys); // 打印结果:['Joe', 'Peter'] // 单独输出指定的顶层键,比如第一个Joe console.log(topKeys[0]); // 打印结果:Joe // 遍历逐个输出所有顶层键 topKeys.forEach(item => { console.log(item) })
方法说明
Object.keys()只会返回传入对象的第一层自有可枚举属性的键名,不会递归读取嵌套对象的属性,完全满足你只输出顶层键、不显示下层属性内容的需求。如果需要判断某个值是否为顶层键,还可以搭配load.hasOwnProperty(键名)做存在性校验。
内容的提问来源于stack exchange,提问作者polelord
相关产品推荐
相关产品推荐

