是否有可能在带有items的对象中更改父/子对象的顺序?
Is it possible to change the order of parents/childs in an object with items?
我有一个像这样的对象:
sum = {
value:{
a: 10,
b: 11
}
value2:{
a: 33,
c: 12
}
..
}
我的对象更复杂,字母实际上包含具有不同值的对象,但关键是,我希望循环遍历每个值中存在的所有字母并返回对象,如:
a:{
value: 10,
value2: 33
}
我可以循环遍历整个过程来创建一个新对象,但是有没有更有效的方法来"翻转对象的顺序"呢?
我只想使用所有值对象中存在的键,我目前这样得到它们,但这不是必需的。
value = ['value', 'value2']
tags.forEach( (tag) =>
keys.push(Object.keys(sum[tag]))
)
matches = _.intersection.apply(_, keys);
matches.forEach( (match) => {
...
}
这个解决方案的特点是重新组织属性的顺序。
grouped[kk][k] = sum[k][kk] for all elements
var sum = {
value: {
a: 10,
b: 11
},
value2: {
a: 33,
c: 12
}
},
grouped = {};
Object.keys(sum).forEach(function (k) {
Object.keys(sum[k]).forEach(function (kk) {
grouped[kk] = grouped[kk] || {};
grouped[kk][k] = sum[k][kk];
});
});
document.write('<pre>' + JSON.stringify(grouped, 0, 4) + '</pre>');
相关文章:
- Javascript-根据赋值顺序,按键合并对象数组
- 如何按对象反转Angular ngRepeat的顺序's键,这些键是数字键
- 按特定顺序对对象进行排序—Angular
- 如何在 JavaScript 中以递增顺序在对象中添加属性
- JavaScript:指定对象中属性的顺序
- 对象的顺序已更改
- Javascript对象多个循环,相同的顺序
- 如何使用下划线根据自定义排序顺序对对象数组进行排序
- 对象在循环中运行时未定义,但在按顺序执行时未定义
- AngularJS-ngRepeat对对象的返回顺序与vanillar.in循环不同
- ng重复javascript对象中未按预期顺序重复的项
- 如何像java脚本中给定的对象一样,将对象的属性保持在相同的顺序
- javascript:按实际顺序获取对象项
- 在JavaScript中,对象如何跟踪键/值的插入顺序
- 如何根据不同排序顺序的多个值对json对象进行排序
- three.js:透明对象根据相机角度按错误顺序渲染
- 按数组顺序排列对象
- 通过多次调用按顺序将对象插入数组
- jQuery - 本地存储排序字符串化对象顺序
- 重置对象顺序