[英]How to access array stored in Json object?
我有这样的json响应,我想从中获取所有项目名称。
我像平常一样遍历数组,但这里的“ d”不是数组。 如何取得结果:
{
"d": {
"results": [
{
"ProjectId": "696fcc7c-f355-e511-93f0-00155d008500",
"ProjectName": "Payroll",
"EnterpriseProjectTypeDescription": null,
"EnterpriseProjectTypeId": null,
"EnterpriseProjectTypeIsDefault": null
},
{
"ProjectId": "696fcc7c-f355-e511-93f0-00155d008505",
"ProjectName": "Permanant",
"EnterpriseProjectTypeDescription": null,
"EnterpriseProjectTypeId": null,
"EnterpriseProjectTypeIsDefault": null
}
]
}
}
var names = myData.d.results.map(function(item){
return item.ProjectName;
});
这将导致如下数组:
["Payroll", "Permanant"]
(假设myData
是您问题中的对象)
您可以使用jsonObject.d.results
从响应中获取数组,并使用forEach()
迭代数组
var res = { "d": { "results": [{ "ProjectId": "696fcc7c-f355-e511-93f0-00155d008500", "ProjectName": "Payroll", "EnterpriseProjectTypeDescription": null, "EnterpriseProjectTypeId": null, "EnterpriseProjectTypeIsDefault": null }, { "ProjectId": "696fcc7c-f355-e511-93f0-00155d008505", "ProjectName": "Permanant", "EnterpriseProjectTypeDescription": null, "EnterpriseProjectTypeId": null, "EnterpriseProjectTypeIsDefault": null } ] } }; res.d.results.forEach(function(v) { document.write(v.ProjectName + '<br>') })
如果要以数组形式获取它,则可以使用map()
var res = { "d": { "results": [{ "ProjectId": "696fcc7c-f355-e511-93f0-00155d008500", "ProjectName": "Payroll", "EnterpriseProjectTypeDescription": null, "EnterpriseProjectTypeId": null, "EnterpriseProjectTypeIsDefault": null }, { "ProjectId": "696fcc7c-f355-e511-93f0-00155d008505", "ProjectName": "Permanant", "EnterpriseProjectTypeDescription": null, "EnterpriseProjectTypeId": null, "EnterpriseProjectTypeIsDefault": null }] } }; var result = res.d.results.map(function(v) { return v.ProjectName; }) document.write(JSON.stringify(result));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.