我具有以下结构的JS对象:
let data = {
Apples: {
A: 2,
B: 9
},
Oranges: {
C: 4,
D: 8
},
Bananas: {
E: 3,
F: 2
},
Peaches: {
G: 8,
H: 4
},
Pears: {
I: 10,
J: 10
},
Melons: {
K: 4,
L: 7
}
};
我需要使用JS动态重命名子项。
例如,我需要将键A
重命名为New name
。启用ES6的最佳方法是什么?
我试图使用简单的for
循环遍历对象,并使用重命名的键生成一个新对象,但这确实不是最有效的方法!
这呢?
我不是生成新对象,而是将新属性添加到现有对象并删除原始对象。
let data = {
Apples: {
A: 2,
B: 9
},
Oranges: {
C: 4,
D: 8
},
Bananas: {
E: 3,
F: 2
},
Peaches: {
G: 8,
H: 4
},
Pears: {
I: 10,
J: 10
},
Melons: {
K: 4,
L: 7
}
};
for (let key1 in data) {
const e = data[key1];
for (let key2 in e) {
e["New Name for " + key2] = e[key2];
delete e[key2];
}
}
console.log(data);