如何在d3.js中根据值对字典对象进行排序

how to sort dictionary object based on values in d3.js?

本文关键字:字典 对象 排序 d3 js      更新时间:2023-09-26

我有一个像

var data ={ "a":10,"b":12,"c":34,"d":78 }

如何根据javascript中的值对字典对象进行排序

我需要像

这样的输出

data ={"d":78,"c":34,"b":12,"a":10,}

不能保证对象中的属性顺序,但是您可以使用Object.keys()创建键数组并按对象的值进行排序。

var data ={ "a":10,"b":12,"c":34,"d":78 }
var result = Object.keys(data).sort(function(a, b) {
  return data[b] - data[a];
})
console.log(result)

您也可以使用Object.entries来获得key-value对的数组,然后按值排序。

var data ={ "a":10,"b":12,"c":34,"d":78 }
var result = Object.entries(data).sort(([_a, a], [_b, b]) => b - a)
console.log(result)