java怎么遍历json数组_js或者Java 遍历json数组 实现如下功能 跪求大神

展开全部

/**

* json格式62616964757a686964616fe4b893e5b19e31333337613136转树状结构

* @param{json}json数据

* @param{String}id的字符串

* @param{String}父id的字符串

* @param{String}children的字符串

* @return{Array}数组

*/

function transData(a, idStr, pidStr, chindrenStr){

var r = [], hash = {}, id = idStr, pid = pidStr, children = chindrenStr, i = 0, j = 0, len = a.length;

for(; i 

hash[a[i][id]] = a[i];

}

for(; j 

var aVal = a[j], hashVP = hash[aVal[pid]];

if(hashVP){

!hashVP[children] && (hashVP[children] = []);

hashVP[children].push(aVal);

}else{

r.push(aVal);

}

}

return r;

}

以上方法完全可以满足你的 需求,Json属性结构的转换。

调用方法:var a=[ {

"a" : "5",

"id" : "0000",

"parent_id" : "null"

}, {

"a" : "1",

"id" : "1000",

"parent_id" : "0000"

}, {

"a" : "2",

"id" : "2000",

"parent_id" : "0000"

}, {

"a" : "6",

"id" : "1001",

"parent_id" : "1000"

}, {

"a" : "6",

"id" : "1002",

"parent_id" : "1000"

}, {

"a" : "23",

"id" : "2001",

"parent_id" : "2000"

}, {

"a" : "11",

"id" : "2002",

"parent_id" : "2000"

} ];

var b=transData(a,"id","parent_id","children");

那么b就是你需要的结构。transData方法在以后遇到类似结构的数据,都可以使用!

以上的所有方法都是JavaScript !

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值