如何从JSON对象数组中提取单个对象(去除方括号)
解决JSON数组提取单个对象的问题
我明白你的困扰啦——你想从records数组里取出第一个对象,结果用slice()得到的却是带方括号的数组,不是单个对象。这其实是因为slice()方法的特性导致的:它始终返回一个新数组,哪怕你只截取了一个元素,结果还是数组格式。
解决方案:直接通过数组索引访问
要获取单个对象,最直接的方式就是用数组索引直接取值(数组索引从0开始),把你的代码改成这样:
var res = { "totalSize": 3, "done": true, "records": [ { "Id": "1", "CaseNumber": "1", "Subject": "test1" }, { "Id": "2", "CaseNumber": "2", "Subject": "test2" }, { "Id": "3", "CaseNumber": "3", "Subject": "test3" } ] }; var extractedRecord = res.records[0]; // 直接取索引0的元素 console.log(extractedRecord);
这样输出的结果就是你想要的单个对象:
{ "Id": "1", "CaseNumber": "1", "Subject": "test1" }
其他可选方法
如果你的场景有特殊需求,也可以用这些方法:
shift():取出数组的第一个元素,但会修改原数组(原数组会移除这个元素):var extractedRecord = res.records.shift();find():如果需要根据条件筛选对象(比如根据Id查找),可以用这个方法:var extractedRecord = res.records.find(item => item.Id === "1");
不过对于你现在的需求,直接用索引访问是最简单高效的方式~
内容的提问来源于stack exchange,提问作者Json
相关产品推荐
相关产品推荐

