如何使用多个对象循环遍历json

时间:2011-12-07 08:04:05

标签: javascript jquery json

我有一些json代码,其中包含多个对象,如下:

[
    {
        "MNGR_NAME": "Mark",
        "MGR_ID": "M44",
        "EMP_ID": "1849"
    },
    {
        "PROJ_ID": "88421",
        "PROJ_NAME": "ABC",
        "PROJ_ALLOC_NO": "49"
    }
]

我的JSON循环片段是

function ServiceSucceeded(result) 
{       
  for(var x=0; x<result.length; x++) 
  {      
    alert(result[i].MNGR_NAME);  
    alert(result[i].MGR_ID);     
    alert(result[i].EMP_ID);  
    alert(result[i].PROJ_ID);  
    alert(result[i].PROJ_NAME);  
    alert(result[i].PROJ_ALLOC_NO);  
  }    
}

当我实施时,会显示自undefined密钥以来result[0] {!}}密钥的警告!result[1]密钥。

例如:result[0].MNGR_NAME(第一个数组)为您提供"Mark",但result[1].MNGR_NAME(第二个数组)在数组中根本没有,因此为您提供undefined

你可以告诉我如何解决这个问题吗?我不应该undefined

1 个答案:

答案 0 :(得分:0)

我会用

for(index in result) {
    var obj = result[index];
    for(objectIndex in obj) {
        if(objectIndex != "PROJ_ALLOC_NO") {
            // Only alert if the key of the object is not PROJ_ALLOC_NO
            alert(objectIndex + ": " + obj[objectIndex]);
        }
    }
}

这循环遍历数组,然后遍历对象并显示对象的每个键和值!