Javascript在对象内部动态分配对象

Javascript在对象内部动态分配对象,javascript,json,object,Javascript,Json,Object,这是我的对象示例,我需要在每个内部对象中循环并动态分配{“type”:“object”} 输入: var favoriteFruit={ “艾米”:{ “描述”:“艾米的最爱”, “水果”:{ “名称”:“香蕉”, “颜色”:“红色” } }, “本”:{ “描述”:“本的最爱”, “水果”:{ “名称”:“苹果”, “颜色”:“红色” } }, “卡罗尔”:{ “描述”:“卡罗尔的最爱”, “水果”:{ “名称”:“樱桃”, “颜色”:“红色” } }, “奥利维亚”:{ “描述”:“Oliv

这是我的对象示例,我需要在每个内部对象中循环并动态分配{“type”:“object”}

输入:

var favoriteFruit={ “艾米”:{ “描述”:“艾米的最爱”, “水果”:{ “名称”:“香蕉”, “颜色”:“红色” } }, “本”:{ “描述”:“本的最爱”, “水果”:{ “名称”:“苹果”, “颜色”:“红色” } }, “卡罗尔”:{ “描述”:“卡罗尔的最爱”, “水果”:{ “名称”:“樱桃”, “颜色”:“红色” } }, “奥利维亚”:{ “描述”:“Olivia fav”, “水果”:{ “名称”:“橙色”, “颜色”:“橙色” } }, “Pualine”:{ “描述”:“Pualine fav”, “水果”:{ “名称”:“梨”, “颜色”:“绿色” } } };

预期产出:

var favoriteFruit = {
    "Amy": {
       "type": "object", 
       "desc": "Amy's fav",
         "fruit": {
            "Name" : "Banana",
            "color" : "Red"
         }
    },
    "Ben": {
        "type": "object", 
        "desc": "Ben's fav",
         "fruit": {
            "Name" : "Apple",
            "color" : "Red"
         }
    },
    "Carol": {
        "type": "object",
        "desc": "Carol's fav", 
         "fruit": {
            "Name" : "Cherry",
            "color" : "Red"
         }
    },
    "Olivia": {
        "type": "object",
         "desc": "Olivia fav", 
         "fruit": {
            "Name" : "Orange",
            "color" : "Orange"
         }
    },
    "Pualine": {
        "type": "object", 
        "desc": "Pualine fav",
         "fruit": {
            "Name" : "Pear",
            "color" : "Green"
         }
    }
};

实际上,您没有JSON字符串,但我引用了它,所以它现在是

见内联评论:

var-favoriteFruit=`{
“艾米”:{
“描述”:“艾米的最爱”,
“水果”:{
“名称”:“香蕉”,
“颜色”:“红色”
}
},
“本”:{
“描述”:“本的最爱”,
“水果”:{
“名称”:“苹果”,
“颜色”:“红色”
}
},
“卡罗尔”:{
“描述”:“卡罗尔的最爱”,
“水果”:{
“名称”:“樱桃”,
“颜色”:“红色”
}
},
“奥利维亚”:{
“描述”:“Olivia fav”,
“水果”:{
“名称”:“橙色”,
“颜色”:“橙色”
}
},
“Pualine”:{
“描述”:“Pualine fav”,
“水果”:{
“名称”:“梨”,
“颜色”:“绿色”
}
}
}`;
//将JSON转换为对象
var obj=JSON.parse(favoriteFruit);
//循环遍历对象的属性
用于(obj中的var prop){
//为每个对象指定一个新属性/值
obj[prop].type=“Object”;
}

控制台日志(obj)迭代通过使用可访问的键,然后使用:

var-favoriteFruit={
“艾米”:{
“描述”:“艾米的最爱”,
“水果”:{
“名称”:“香蕉”,
“颜色”:“红色”
}
},
“本”:{
“描述”:“本的最爱”,
“水果”:{
“名称”:“苹果”,
“颜色”:“红色”
}
},
“卡罗尔”:{
“描述”:“卡罗尔的最爱”,
“水果”:{
“名称”:“樱桃”,
“颜色”:“红色”
}
},
“奥利维亚”:{
“描述”:“Olivia fav”,
“水果”:{
“名称”:“橙色”,
“颜色”:“橙色”
}
},
“Pualine”:{
“描述”:“Pualine fav”,
“水果”:{
“名称”:“梨”,
“颜色”:“绿色”
}
}
}
Object.keys(favoriteFruit).forEach(function(key){
assign(favoriteFruit[key],{type:'Object'})
})

console.log(favoriteFruit)
欢迎使用!在这个网站上,你应该尝试自己编写代码。之后,如果你有问题,你可以张贴你已经尝试了一个明确的解释什么是不工作,并提供一个解决方案。我建议你读书。另外,请务必使用。这不是JSON。这只是一个普通的JavaScript对象。JSON是一个字符串。有可能在第一个位置有“type”:“object”吗?“Pualine”:{“type”:“Object”,“desc”:“Pualine fav”,“fruit”:{“Name”:“Pear”,“color”:“Green”}}@user2553117不,对象中的属性顺序从未得到保证。坦率地说,你没有理由需要它们。