关于javascript:js-对象根据路径修改值

var obj = {
    "zhang":{
        name:'张三',
        girlfriend:{
            name:'阿狸',
        }
    }
}

var path = 'zhang-girlfriend-name'
var value = '娑娜'

function setVal(){
    var list = path.split("-");
    var th = "";
    for (let i = 0; i < list.length; i++) {
        th += "['" + list[i] + "']";
    }
    eval(`obj${th}='${value}'`)
} 

 
  • 运行后果
{
    "zhang":{
        name:'张三',
        girlfriend:{
            name:'娑娜',
        }
    }
}

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理