如何在js中对dicts列表进行排序?
我有:
[{'car': 'UAZ', 'price': 30 ,'currency': 'RUB'}, {'car': 'Mazda', 'price': 1000 ,'currency': 'USD'},{'car': 'Zaporozhec', 'price': 2 ,'currency': 'RUB'}, {'car': 'GAZ', 'price': 0 ,'currency': 'RUB'}]
我希望按价格和货币排序:
[{'car': 'Mazda', 'price': 1000 ,'currency': 'USD'}, {'car': 'UAZ', 'price': 30 ,'currency': 'RUB'},{'car': 'Zaporozhec', 'price': 2 ,'currency': 'RUB'}, {'car': 'GAZ', 'price': 0 ,'currency': 'RUB'}]
答案 0 :(得分:3)
yourArrayOfObjects.sort(function(first, second) {
return second.price - first.price;
});
答案 1 :(得分:2)
JavaScript不是Python。那里有一组对象。
致电array sort
method。传递一个带有两个参数的函数(数组中要比较的两个对象)。让它返回-1
,0
或1
,具体取决于您希望将这两个对象排序到哪个顺序(我在上面链接的文档中有示例和更多详细信息)。