0

我有一个以下格式的 JSON 数组,我想将其转换为(键,值)对中的 JSON 对象。由于我是 JSON 新手,我不知道如何实现这一点。

{
    "id": [
        "100",
        "101",
        "102"
    ],
    "Name": [
        "ajit",
        "amol",
        "kiran"
    ],
    "sex": [
        "Male",
        "Male",
        "Male"
    ]
}

我想在上面转换成这样的格式

[
    {
        "id": "100",
        "Name": "ajit",
        "Sex": "Male"
    },
    {
        "id": "101",
        "Name": "amol",
        "Sex": "Male"
    },
    {
        "id": "102",
        "Name": "kiran",
        "Sex": "Male"
    }
]

你们能分享你对如何做到这一点的宝贵想法吗?

阿吉特

4

1 回答 1

0

假设很多事情都适用于这个例子, var arrayOfObjects = [] ;

/**
 * @params Object obj formated like the first one
 */
var i = 0,
    arrayOfObjects = [] ;

for( prop in obj ) {
    if ( prop instanceof Array ) {
         for( i = 0 ; i < obj[prop].length ; ++i ) {
              if ( typeof arrayOfObjects[i] !== undefined ) {
                 arrayOfObjects[i][prop] = obj[prop][i] ;
              } else {
                 var newObj = {} ;
                 newObj[prop] = obj[prop][i] ;
                 arrayOfObjects.push(newObj) ;
              }
         }
    }
}
于 2013-03-21T06:13:59.683 回答