javascript - 如何按三个属性对数据进行排序?
问题描述
我有以下数组
let arr = [
{
"creationDateTime": 1632180639045,
"pricePerUnitPerHour": 12,
"divisible": false,
},
{
"creationDateTime": 2504091567119,
"pricePerUnitPerHour": 12,
"divisible": true,
},
{
"creationDateTime": 1504095567183,
"pricePerUnitPerHour": 5,
"divisible": true,
},
]
我需要通过这三个属性 pricePerUnitPerHour/divisible/ 和 creationDateTime 进行升序排序
因此,如果例如两个对象具有相同的值,pricePerUnitPerHour
那么排序应该是可分割的属性。在divisible:true
我们拥有的对象之前应该有divisible:false
。
最后,如果它们有两个相等的价格,则可分割属性为真,例如应根据时间戳进行排序-creationDateTime
我被困在
tableSort() {
this.searchFilteredData.sort(
function (a, b) {
return b.pricePerUnitPerHour - a.pricePerUnitPerHour;
});
}
解决方案
推荐阅读
- loops - Ansible - 如何将多个不同的列表组合成在任务循环中使用
- php - 如何在 Laravel 8.x 中队列作业类的 handle() 方法中创建数据库查询
- validation - 自定义验证器来比较两个字段
- javascript - 从 JavaScript 向节点服务器发送 HTTP POST 请求时正文为空
- javascript - Threes.js Raycaster 不与自定义顶点着色器相交
- python - Pandas 创建具有按时间戳排序的累积链接历史记录的列
- html - 动作伪类悬停不按程序旋转 div
- python - 如何从对 Django-restful-framework 的请求中获取多个值
- javascript - 在 iframe 中嵌入 django 登录
- spring-boot - 如何配置 SpringBoot ObjectMapper