var Obj = {
first1:{
second11:'清风徐来',
second12:{
thorth1:'好贴盛宴',
thorth2:{jjj:'1',rrr:'4',ttt:'8'},
thorth3:'百年好和'
}
},
first2:{
second21:'好好学习',
second22:'天天向上'
}
}
获取obj数据对象最后某一层级的的value,例如知道 name= ‘first1.second12.thorth2’ ;
let querParam = Obj;
name.split('.').forEach(item=>{
querParam = querParam[item];
})
console.log(querParam)//取到目的值
把一个对象gg赋值给一个数据对象obj的某一层,例如付给thorth2 已知name= ‘first1.second12.thorth2’,不能改变其他层级
var name= 'first1.second12.thorth2';
var gg = {gggg:'ss',ttt:'yyy'};
var arr = name.split('.');
for(var i = arr.length -1; i>-1; i--){
var newVal = {};
newVal[arr[i]] = gg;
var querParam = Obj;
for(var j = 0;j< i ;j++){
querParam = querParam[arr[j]]
console.log('fff',j)
}
gg = Object.assign({},querParam,newVal);
console.log('',i)
}
console.log('gg',gg)//最终值与Obj对比

771

被折叠的 条评论
为什么被折叠?



