对象根据某个数字值字段排序

const o = {a: 4, b: 3, g: 6, s: 9, k: 5};
const os = Object.entries(o) // 变成对象数组
const newOs = os.sort((a, b) => a[1] - b[1]);
console.log(newOs);
/*
0: (2) ["b", 3]
1: (2) ["a", 4]
2: (2) ["k", 5]
3: (2) ["g", 6]
4: (2) ["s", 9]
*/

**Object.entries()**方法返回一个给定对象自身可枚举属性的键值对数组,其排列与使用 for...in 循环遍历该对象时返回的顺序一致(区别在于 for-in 循环还会枚举原型链中的属性)。

const object1 = {
  a: 'somestring',
  b: 42
};

for (const [key, value] of Object.entries(object1)) {
  console.log(`${key}: ${value}`);
}

你可能感兴趣的:(对象根据某个数字值字段排序)