arrays - React Native:对多维数组进行排序
问题描述
我想按包含在数组数组中的值对数组进行排序。这是我从 API 获取的数组:
0: {id: 1126, votes: 2}
1: {id: 1125, votes: 4}
2: {id: 1124, votes: 0}
3: {id: 1123, votes: 1}
...
因此,在索引 0 上,我有一个具有 id1126
并包含变量 votes的数组2
。现在我想按票数排序数组。
这是我走了多远(它返回相同的数组......):
data = [].concat(data).sort((a, b) => a.votes > b.votes);
但是,我没有得到我想要的结果。我想让它按票排序。像这样:
0: {id: 1125, votes: 4}
1: {id: 1126, votes: 2}
2: {id: 1123, votes: 1}
3: {id: 1124, votes: 0}
...
我将不胜感激任何帮助!亲切的问候,谢谢!
解决方案
const arr = [{id: 1126, votes: 2},{id: 1125, votes: 4},{id: 1124, votes: 0}]
arr.sort((a,b) => b.votes - a.votes)
这将导致:
0: {id: 1125, votes: 4}
1: {id: 1126, votes: 2}
2: {id: 1124, votes: 0}
这对你有帮助吗?
- 更新:很好的解释在这里 排序功能如何在 JavaScript 中工作,以及比较功能
推荐阅读
- node.js - 猫鼬文档过期后删除文件
- c# - 这种可公开触发的事件的实现是否合理?
- python-3.x - 在命令行运行 Python 脚本 - 找不到“__main__”模块错误
- node.js - 自动链接不适用于 react-native 0.63.4 和 react-native-localize
- javascript - 将数据从节点服务器传递到来自 3rd 方 API 的 React
- python - 更改绘图地图的参数
- wordpress - 如何在google上查看网站的搜索结果?
- javascript - 在一个字符串中,如何检查另一个字符前面的前一个字符是否是空格?
- ruby-on-rails - 用于连接表的 Rails 查询
- asp.net - 在没有 OpenID Connect 和 Razor 页面的情况下使用 ASP.NET 5.0 存储用户数据