使用Javascript/JQuery迭代JSON响应

使用Javascript/JQuery迭代JSON响应,javascript,jquery,arrays,json,object,Javascript,Jquery,Arrays,Json,Object,我尝试使用Javascript迭代以下JSON响应:- { "DocumentResponseResults": [ { "Name": "Example1", "Id": "1" }, { "Name": "Example2", "Id": "2" }, { "Name": "Exampl

我尝试使用Javascript迭代以下JSON响应:-

{
    "DocumentResponseResults": [
        {
            "Name": "Example1",
            "Id": "1"
        },
        {
            "Name": "Example2",
            "Id": "2"
        },
        {
            "Name": "Example3",
            "Id": "3"
        }
    ]
}
我已经使用在线验证器进行了测试,以确保其JSON有效

我通过asp.net中的WebMethod的响应收到此消息

在响应中,它看起来是这样的:-

d:"{"DocumentResponseResults":[{"Name":"Example1","Id":"1"},{"Name":"Example2","Id":"2"},{"Name":"Example3","Id":"3"}]}"
我正在尝试迭代JSON字符串中的项

我一开始是这样解析它的:-

var jsonData = JSON.parse(response.d);
我试图通过访问Items集合来迭代对象数组,但是javascript告诉我Items属性未定义


有谁能建议我如何迭代集合,并提取诸如“Name”和“Id”之类的属性吗?jsonData.DocumentResponseResults是items属性。

您可以通过以下方式访问数组:

jsonData.DocumentResponseResults.forEach(function(Result) {
  console.log(Result.Name)
});
DocumentResponseResults[i].Name

DocumentResponseResults[i].Id
其中“i”是一个数字

如果要遍历数组,可以使用jQuery.each()

或者只是一个for()循环。

var items=response.DocumentResponseResults//获取数组
对于(var i=0;i
DocumentResponseResults[i].Name

DocumentResponseResults[i].Id
var items = response.DocumentResponseResults //gets you array
for (var i = 0; i < items .length; i++) { 
    var name = items[i].Name;
    var id = items[i].Id;
    console.log("Name:"+name + " Id:"+id+"\n");
}