按两个值排序,优先考虑其中一个值

我如何按值优先排序这些数据count并按year升序排列count值?


//sort this

var data = [

    { count: '12', year: '1956' },

    { count: '1', year: '1971' },

    { count: '33', year: '1989' },

    { count: '33', year: '1988' }

];

//to get this

var data = [

    { count: '1', year: '1971' },

    { count: '12', year: '1956' },

    { count: '33', year: '1988' },

    { count: '33', year: '1989' },

];


小怪兽爱吃肉
浏览 539回答 3
3回答

MYYA

一个简单的解决方案是data.sort(function (a, b) {  return a.count - b.count || a.year - b.year;});这是有效的,因为如果count不同,则排序基于此。如果count相同,则第一个表达式返回0,转换为false,并使用第二个表达式的结果(即排序基于年份)。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript