在js中获取到var json = 
[
    {
          "cId":"0011",
          "cName":"aaa",
          "list":[
                 {"dId":"0001","dName":"监查审计部","deptList":[]},
                 {"dId":"Dpt0002","dName":"财务部","deptList":[]
                 ]
     },
    {
          "cId":"0001",
          "cName":"bbb",
          "list":[
                 ]
     }
]
想把他转成
var newJson = {
                 id:"0011",
                 name:"aaa",
                 children:[
                            {
                              id:"0001",
                              name:"监查审计部",
                              children:[]
                             },
                            {
                               id:"Dpt0002",
                               name:"财务部",
                               children:[]
                             }
                           ] 
             },
            {
                id:"0001",
                name:"bbb",
                children:[] 
             }应该是json互相的转换,
求教了JavaScriptJSON

解决方案 »

  1.   

    看你这个结构都 没变,其实只在json字符串的时候,把几个key 名改一下就行了
      

  2.   


    说到低就是 吧json数组转成json对象,我肯定不会手工去改啊 
      

  3.   


    说到低就是 吧json数组转成json对象,我肯定不会手工去改啊 
      

  4.   

    这是个什么东东var newJson = {
                     id:"0011",
                     name:"aaa",
                     children:[
                                {
                                  id:"0001",
                                  name:"监查审计部",
                                  children:[]
                                 },
                                {
                                   id:"Dpt0002",
                                   name:"财务部",
                                   children:[]
                                 }
                               ] 
                 },
                {
                    id:"0001",
                    name:"bbb",
                    children:[] 
                 }
      

  5.   

    json对象还有这种的{},{},真是长见识了
      

  6.   


    说到低就是 吧json数组转成json对象,我肯定不会手工去改啊 
    直接用字符替换方法<textarea id='source' style="width:100%;height:200px">
    [
        {
              "cId":"0011",
              "cName":"aaa",
              "list":[
                     { "dId":"0001","dName":"监查审计部","deptList":[] },
                     {"dId":"Dpt0002","dName":"财务部","deptList":[] }
      ]
         },
        {
              "cId":"0001",
              "cName":"bbb",
              "list":[]
                     
         }
    ]
    </textarea>
    <div>
      <input type="button" value="change" onclick="change()"  />
    </div>
    <textarea id='result' style="width:100%;height:200px"></textarea>
    <script>
    function change(){
    var source=document.getElementById('source').value;
    var re=source.replace(/cId|dId/g,'id').replace(/cName|dName/g,'name').replace(
    /deptList|list/g,'children');
    document.getElementById('result').value=re;
    eval('var obj='+re);
    alert( obj[0].name)
     
    }

    </script>
      

  7.   

    有一个法子var json = 
    [
        {
              "cId":"0011",
              "cName":"aaa",
              "list":[
                     {"dId":"0001","dName":"监查审计部","deptList":[]},
                     {"dId":"Dpt0002","dName":"财务部","deptList":[]
                     ]
         },
        {
              "cId":"0001",
              "cName":"bbb",
              "list":[
                     ]
         }
    ]
    var json2 =[];
    $.each(json,function(a,a_item){
       $.each(a_item,function(b,b_item){
        if(b==cId){
          var temp={"id",b_item};
        json2.push(temp);
    //直接手打的没测过  笨办法
       
    }})
    })
      

  8.   


    function old2newJson(old){
    var i, len=old.length, temp, j, temp2, len2, tempList;
    var newJson = []; for(i=0; i<len; i++){
    len2 = old[i].list.length;
    tempList = [];
    for(j=0; j<len2; j++){
    temp2 = {
    'id':old[i].list[j].dId,
    'name':old[i].list[j].dName,
    'children':old[i].list[j].deptList
    }
    tempList.push(temp2);
    }

    temp = {
    'id':old[i].cId,
    'name':old[i].cName,
    'children':tempList
    };

    newJson.push(temp);
    }
    return newJson;
    }
      

  9.   


    json = JSON.stringify(json);
    var regexId = /[a-z]*Id/gi;
    var regexName = /[a-z]*Name/gi;
    var regexList = /[a-z]*list/gi;
    var stringj = json.stri
    json = json.replace(regexId, "id");
    json = json.replace(regexName, "name");
    json = json.replace(regexList, "children");