如何把str = {a.b.c:1,a.b.d:2,b.a.c:2,b.a.s:9}转换为{a:{c:1,d:2},b:{a:{c:2,s:9}}

如何把str = {a.b.c:1,a.b.d:2,b.a.c:2,b.a.s:9}转换为{a:{c:1,d:2},b:{a:{c:2,s:9}}

这样,你试一下

let cc = {'a.b.c':1,'a.b.d':2,'b.a.c':2,'b.a.s':9}
let res = {};
let loca = {};
Object.keys(cc).forEach((item,index)=>{
  let temp = item.split('.');
  loca = res
  temp.forEach((itemson,indexson)=>{
     if( loca[itemson]){
       loca=loca[itemson];
     }else{
       if(indexson===temp.length-1){
         loca[itemson] = cc[item]
       }else{
         loca[itemson] = {};
       }
       loca=loca[itemson];
     }
  })
      console.log(res)
})

img

对你有用的话,请点击一下【采纳此答案】,谢谢🌹

没什么关联咋转,你前面要是a.c、a.d还好说,你中间那个b什么关联