我试图在我的 javascript 对象中添加一个嵌套对象。我在网上找不到任何解决方案。
我有一个来自服务器的响应,我需要在将相同的数据存储到数据库之前设置一些值。
这是对象:
"currentMembership": {
"messages": {
"isUnlimited": false,
"count": 5
},
"likes": {
"isUnlimited": false,
"count": 5
},
"matches": {
"isUnlimited": false,
"count": 0,
"validFor": 0
},
"backtrack": {
"isUnlimited": false,
"count": 0
}
}
我正在尝试将 dailyCount 对象添加到我的一些对象中,以便返回的对象更新为:
"currentMembership": {
"messages": {
"dailyCount": {
"date": "2019-12-10T19:33:22.793Z"
"count": 5
},
"isUnlimited": false,
"count": 5
},
"likes": {
"dailyCount": {
"date": "2019-12-10T19:33:16.664Z",
"count": 5
},
"isUnlimited": false,
"count": 5
},
"matches": {
"dailyCount": {
"date": "2019-12-10T19:33:16.697Z",
"count": 0
},
"isUnlimited": false,
"count": 0,
"validFor": 0
},
"backtrack": {
"dailyCount": {
"date": "2019-12-10T19:33:16.701Z",
"count": 0
},
"isUnlimited": false,
"count": 0
},
"hasPremiumPlan": false,
"hasDMPlan": false,
"filters": false
}
任何帮助都会很棒! :)
最佳答案
您可以使用for...in循环遍历对象的属性。
var i;
for (i in currentMembership) {
currentMembership[i].dailyCount = {
date: "2019-12-10T19:33:16.701Z",
count: 0
}
}
如果您只针对某些属性,请使用这些键创建一个数组并循环它们。
for (var keys = ['messages', 'likes', 'matches', 'backtrack'], i = 0, j = keys.length; i < j; i++) {
currentMembership[keys[i]].dailyCount = {
date: "2019-12-10T19:33:16.701Z",
count: 0
}
}
关于javascript - 如何在当前现有的 javascript 对象中添加嵌套对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59274268/