如何获取字段下JSON数量及data中最后一个子JSON的键名
非数组结构JSON的两个操作方案
给定如下JSON结构:
{ "intro": { ... }, "data": { "1001": { "id": 9, "value": 115 }, ... "1009": { "id": 7, "value": 410 } } }
其中data字段下是以唯一标识符为键的独立JSON对象,而非数组,以下是两个问题的解决方法:
1. 获取指定字段下的JSON数量
通过提取对象的键名数组并获取长度即可实现,以JavaScript为例:
// 假设已将JSON解析为对象jsonObj const subObjCount = Object.keys(jsonObj.data).length; console.log(subObjCount); // 示例中输出9
核心逻辑:Object.keys()会返回包含目标对象所有可枚举键名的数组,数组长度就是子JSON的数量。
2. 获取data字段下最后一个子JSON的键名
先提取键名数组,再取数组最后一项,以JavaScript为例:
// 假设已将JSON解析为对象jsonObj const dataKeys = Object.keys(jsonObj.data); const lastKey = dataKeys[dataKeys.length - 1]; console.log(lastKey); // 示例中输出"1009"
注意事项:
- 若键名为数字字符串(如示例中的"1001"),
Object.keys()返回的数组会按数字升序排列; - 若为不规则字符串键名,数组会遵循ES6+规范,按键名的插入顺序排列。
内容的提问来源于stack exchange,提问作者rozerro
相关产品推荐
相关产品推荐

