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

javascriptweb developmentfront end technologyobject oriented programming

假设我们有以下对象 −

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 }

相关文章


有用资源