第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

有大佬遇到過這個(gè)問題嗎:json遞歸修改里面層級結(jié)構(gòu)(已有人解答,謝謝了)大佬們有什么好的建議?

有大佬遇到過這個(gè)問題嗎:json遞歸修改里面層級結(jié)構(gòu)(已有人解答,謝謝了)大佬們有什么好的建議?

BIG陽 2019-08-14 00:56:32
這樣一個(gè)需求,這樣的JSON,如果當(dāng)前的對象下面的type為object,則需要用一個(gè)新的對象items包裹里面的層級。例如vardataPre={"name":{"type":"string","desc":"病人姓名","testData":"張三李四","sex":{"type":"object",//這里的type為object"desc":"性別",//如果同級的type為object,需要?jiǎng)h除這個(gè)字段"testData":"男",//如果同級的type為object,需要?jiǎng)h除這個(gè)字段"city":{"type":"string","desc":"城市","testData":"杭州"},"street":{"type":"string","desc":"街道","testData":"浦口街道"}}},"order":{"type":"string","desc":"訂單","testData":"名稱"}}修改成這樣的,這個(gè)JSON對象總共有三級,可能會有很對數(shù)據(jù),大概數(shù)據(jù)結(jié)構(gòu)就是這樣vardataHandle={"name":{"type":"string","desc":"病人姓名","testData":"張三李四","sex":{"type":"object","items"{//這里的為新添加的對象"city":{"type":"string","desc":"城市","testData":"杭州"},"street":{"type":"string","desc":"街道","testData":"浦口街道"}}}},"order":{"type":"string","desc":"訂單","testData":"名稱"}}謝謝!
查看完整描述

2 回答

?
手掌心

TA貢獻(xiàn)1942條經(jīng)驗(yàn) 獲得超3個(gè)贊

functiongenerate(obj){
let_obj={};
if(obj['type']&&obj['type']==='object'){
letitems={},flag=false;
Object.entries(obj).forEach(([key,value])=>{
if(key==='type'){
_obj[key]=value
}elseif(typeof(value)==='object'){
flag=true;
items[key]=generate(value);
}
})
if(flag){
_obj['items']=items;
}
}
else{
Object.entries(obj).forEach(([key,value])=>{
if(typeof(value)!=='object'){
_obj[key]=value
}else{
_obj[key]=generate(value);
}
})
}
return_obj
}
                            
查看完整回答
反對 回復(fù) 2019-08-14
?
HUH函數(shù)

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超4個(gè)贊

functiontransform(source){
varfilterKeys=["desc","testData"];
if(source===null||typeofsource!=="object"){
returnsource;
}
Object.keys(source).forEach(key=>{
letitem=source[key];
if(item&&typeofitem==="object"&&item.type==="object"){
filterKeys.forEach(filter=>{
deleteitem[filter];
});
letkeys=Object.keys(item),
grouped={};
keys.forEach(subKey=>{
if(subKey!=="type"){
grouped[subKey]=item[subKey];
deleteitem[subKey];
}
});
item.items=transform(grouped);
}else{
source[key]=transform(item);
}
});
returnsource;
}
                            
查看完整回答
反對 回復(fù) 2019-08-14
  • 2 回答
  • 0 關(guān)注
  • 324 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號