[英]How to sort object by numeric key value
我有一個看起來像這樣的對象:
a = {10: 961, 11: 1418, 12: 1526, 13: 1652, 14: 1482, 15: 1581, 16: 1594, 17: 1201, 18: 816, 19: 994, 20: 455, 21: 910, 22: 1181, 23: 713, 00: 296, 01: 144, 02: 100, 03: 56, 04: 22}
如何重新排列條目的順序,使其看起來像
b = {00: 296, 01: 144, 02: 100, 03: 56, 04: 22, ...}
不確定這是否相關,但我從更大的 JSON 對象派生此對象,並且需要對其進行排序以在圖表上顯示數據。
對象的屬性首先按整數值排序,然后按字符串鍵按它們添加到對象的順序排序。 因此,可以通過從您的對象創建一個新對象來對屬性進行排序。
a = {10: 961, 11: 1418, 12: 1526, 13: 1652, 14: 1482, 15: 1581, 16: 1594, 17: 1201, 18: 816, 19: 994, 20: 455, 21: 910, 22: 1181, 23: 713, 00: 296, 01: 144, 02: 100, 03: 56, 04: 22};
b = {};
Object.keys(a).sort((a,b) => { return parseInt(a) - parseInt(b);}).forEach((x) => {
b[x] = a[x];});
console.log(b)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.