您的位置:首页 > Web前端 > JavaScript

js json 转化

2015-11-02 15:35 363 查看
varnewtemp=[{title:'北京市',money:'11'},
{title:'天津市',money:'11'},
{title:'山东省',money:'11'},
{title:'河北省',money:'11'},
{title:'内蒙古',money:'12'},
];
有这么一个json串因工作需要需要转换成如下

[{money:'11',title:['北京市','天津市','山东省','河北省']},
{money:'12',title:['内蒙古']}]之前写好的一个json代码如下
varjson={};
for(vari=0;i<newtemp.length;i++){
varmap=newtemp[i];
if((map["money"]injson)){
vararry=json[map["money"]];
arry.push(map["title"]);
json[map["money"]]=arry;

}else{
vararr=[];
arr.push(map["title"]);
json[map["money"]]=arr;
}

}

输出结果如下:[{'11':"['北京市','天津市','山东省','河北省']"},{'12':"['内蒙古']}]
因不符合要求所以继续修改:
于是思想了下在之前的代码上做修改:

for(vari=0;i<newtemp.length;i++){
//varmap=newtemp[i];
//if(jsonArray.length>0){
////console.log("i==="+i,map,map["money"],jsonArray.length);
//for(varf=0;f<jsonArray.length;f++){
////console.log(jsonArray,f,i)
////console.log(json,i,f,"0");
//if((map["money"]==jsonArray[f]["money"])){
//vararry=jsonArray[f]["province"];
//arry.push(map["title"]);
//jsonArray[f]["province"]=arry;
//}else{
//
//vararr=[];
//json={};
//arr.push(map["title"]);
////json[map["money"]]=arr;
//json.money=map["money"];
//json.province=arr;
//jsonArray.push(json);
//}
//}
//}
//else{
//vararr=[];
//json={};
//arr.push(map["title"]);
////json[map["money"]]=arr;
//json.money=map["money"];
//json.province=arr;
//jsonArray.push(json);
//}
//}
结果输出:[{money:'11',province:['北京市','天津市','山东省','河北省']},{money:'12',province:['内蒙古','内蒙古']}]
结果发现ifesle玩不明白了,后来同事一提醒:用之前写好的略加修改就能拿到想要的结果,感悟有时候思想只要换一换柳暗花明啊
代码如下

for(vari=0;i<newtemp.length;i++){
varmap=newtemp[i];
if((map["money"]injson)){
vararry=json[map["money"]];
arry.push(map["title"]);
json[map["money"]]=arry;

}else{
vararr=[];
arr.push(map["title"]);
json[map["money"]]=arr;
}

}
//上面是之前的代码只要在修改下就能完成想要的结果;如下
varjsonarray=[];
for(varsplicJsoninjson){
varnewjson={}
newjson.money=splicJson;
newjson.title=json[splicJson];
jsonarray.push(newjson);
}

其实有些时候都走好了一半的路,因为迷茫,导致没有继续走下去,自己又受到影响又规划了另一条路,当走进去的时候发现备受困难.....




                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: