如何通过JavaScript中的键值按升序对对象进行排序?

假设我们有以下对象-

const obj = {
   "sub1": 56,
   "sub2": 67,
   "sub3": 98,
   "sub4": 54,
   "sub5": 87
};

我们需要编写一个接受一个这样的对象的JavaScript函数。然后,我们的函数应该按照对象中存在的值的升序对对象进行排序。最后,我们应该返回这样形成的对象。

示例

为此的代码将是-

const obj = {
   "sub1": 56,
   "sub2": 67,
   "sub3": 98,
   "sub4": 54,
   "sub5": 87
};
const sortObject = obj => {
   const sorter = (a, b) => {
      return obj[a] - obj[b];
   };
   const keys = Object.keys(obj);
   keys.sort(sorter);
   const res = {};
   keys.forEach(key => {
      res[key] = obj[key];
   });
   return res;
};
console.log(sortObject(obj));

输出结果

控制台中的输出将是-

{ sub4: 54, sub1: 56, sub2: 67, sub5: 87, sub3: 98 }