const updateDotAttr = (obj,dot,data)=>{
let dots = dot.split(".")
dots.reduce((pre,cur)=>{
console.log("pre=",pre,"cur=",cur,"pre[cur]=",pre[cur],"data=",data)
pre[cur]=data
return pre[cur]
},obj)
}
const obj = {"a":{"b":{"c":{"d":1}}}}
updateDotAttr(obj,"a.b.c",{"d":2})
console.log("obj",obj)