【问题标题】:Can JSON be edited using JSON in javascript可以在 javascript 中使用 JSON 编辑 JSON
【发布时间】:2017-11-04 14:06:44
【问题描述】:

例如,我有一个 JSON 数据,例如

olddata = {
    userNname : "joeydash",
    sex : "female",
    email : "ae16b001@smail.iitm.ac.in"
};
dataToEdit = {
    name = "Mritunjoy Das",
    sex = "male"
};

javascript中是否有任何功能,如果我这样做了

newData = doSomething(oldData,dataToEdit);
console.log(newData);

它显示

{
   userNname : "joeydash",
   name : "Mritunjoy Das"
   sex : "male",
   email : "ae16b001@smail.iitm.ac.in"
}

【问题讨论】:

    标签: javascript json ecmascript-6


    【解决方案1】:

    olddata = {
        userNname : "joeydash",
        sex : "female",
        email : "ae16b001@smail.iitm.ac.in"
    };
    dataToEdit = {
        name : "Mritunjoy Das",
        sex : "male"
    };
    var newData = Object.assign(olddata, dataToEdit);
    console.log(newData);

    【讨论】:

    • 如果你想要一个从olddata创建的新对象,你应该使用newData=Object.assign({},olddata,dataToEdit)。但即便如此,请记住,这不会是“深度”副本。
    • 你说得对,但作者没有要求深拷贝
    • 很确定作者没有要求覆盖olddata
    【解决方案2】:

    试试这个:

    function doSomething(oldData,dataToEdit){
         for (var key in dataToEdit) {
             if (dataToEdit.hasOwnProperty(key)) {
                  oldData[key] = dataToEdit[key];       
             }
         }
         return oldData;
    }
    

    还将= 更改为: 为:

    dataToEdit = {
        name : "Mritunjoy Das",
        sex : "male"
    };
    

    【讨论】:

    • 非常感谢
    猜你喜欢
    • 2013-10-30
    • 2021-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-19
    • 1970-01-01
    • 2021-04-28
    • 2022-10-14
    相关资源
    最近更新 更多