尚方寶劍之說
2023-08-10 14:30:25
我有這個對象{TDD_rating: 80, Fluency_rating: 70, Debug_rating: 64, Model_rating: 53, Refactor_rating: 68,}我想要這個數組的格式[ { subject: 'TDD', score: 80 }, { subject: 'Fluency', score: 70}, { subject: 'Debug', score: 65}, { subject: 'Model', score: 53}, { subject: 'Refactor', score: 68},];我嘗試使用 Object.entries 和 map 但似乎無法到達那里
2 回答

米琪卡哇伊
TA貢獻1998條經驗 獲得超6個贊
您可以使用Object.entries()和Array.prototype.map()方法的組合來獲得結果。使用方法獲取鍵值對Object.entries(),然后將其映射以生成所需的對象數組。
const data = {
TDD_rating: 80,
Fluency_rating: 70,
Debug_rating: 64,
Model_rating: 53,
Refactor_rating: 68,
};
const ret = Object.entries(data).map(([x, y]) => ({
subject: x.replace('_rating', ''),
score: y,
}));
console.log(ret);

翻閱古今
TA貢獻1780條經驗 獲得超5個贊
您可以使用Object.keys和map方法來實現這一點,
const obj = {
? TDD_rating: 80,
? Fluency_rating: 70,
? Debug_rating: 65,
? Model_rating: 53,
? Refactor_rating: 68,
};
const result = Object.keys(obj).map((key) => ({ subject: key, score: obj[key] }));
console.log(result);
添加回答
舉報
0/150
提交
取消