javascript - 按键对数组进行排序
问题描述
如果之前已经回答过这个问题,我深表歉意,搜索了大量可能的术语,但找不到我正在寻找的答案。
我有一个数组,sales = [],并且 sales 正在通过 aa 循环添加
for(var i=0; i<json.sales.length; i++) {
sales[parseFloat(json.sales[i][0])] = parseFloat(json.sales[i][1])
}
感谢任何输入
数组输出:
[ '0.00000979': 1730,
'0.00000969': 206,
'0.00000955': 3141,
'0.00000951': 525,
'0.00000941': 159,
'0.0000095': 1000,
]
预计出局
[ '0.00000979': 1730,
'0.00000969': 206,
'0.00000955': 3141,
'0.00000951': 525,
'0.0000095': 1000,
'0.00000941': 159,
]
解决方案
这在无效语法中,您正在混合数组和对象语法:
[ '0.00000979': 1730,
'0.00000969': 206,
'0.00000955': 3141,
'0.00000951': 525,
'0.00000941': 159,
'0.0000095': 1000,
]
为了能够排序,您需要一个有效的数组,实际上是一个数组数组:
var data = [
[0.00000979, 1730],
[0.00000969, 206],
[0.00000955, 3141],
[0.00000951, 525],
[0.00000941, 159],
[0.0000095, 1000]
]
var sortedData = data.sort((a, b)=>a[0] < b[0]);
console.log(sortedData)
推荐阅读
- java - 删除对象而不将对象作为参数传递
- android - 导航抽屉上的导航组件安全参数问题
- python - Docker:容器永久重启
- oracle - NUMBER 前导零的格式掩码
- node.js - 在 NodeJS/MongoDB 中构建产品过滤器:仅在选择所有过滤器时有效
- bep20 - BEP-20 合同 - 索赔合同名称
- docker - Cypher 初始化脚本 Neo4j 4.2 docker 不工作
- mongodb - URL缩短服务的数据库选择
- sql-server - 将数据库名称作为参数传递给 sp_executesql 以在查询中替换
- html - 如何在移动设备上正确对齐这些箭头