数组 attr=[{time:'2022-09-01',id:1},{time:;2022-01-23',id:2}] 按照time进行正序排序
时间: 2023-11-22 18:53:46 浏览: 122
可以使用JavaScript中的sort()方法,结合比较函数来对数组进行排序。
比较函数需要接收两个参数,表示要比较的元素。如果第一个元素应该排在第二个元素之前,则返回一个小于0的值;如果第一个元素应该排在第二个元素之后,则返回一个大于0的值;如果两个元素相等,则返回0。
以下是按照time正序排序的代码示例:
```
let attr = [{time:'2022-09-01',id:1},{time:'2022-01-23',id:2}];
attr.sort(function(a, b){
return new Date(a.time) - new Date(b.time);
});
console.log(attr);
```
输出结果为:
```
[
{ time: '2022-01-23', id: 2 },
{ time: '2022-09-01', id: 1 }
]
```
在比较函数中,我们将每个元素的time属性转换为Date类型,然后进行比较。这样就可以按照time属性进行正序排序了。
相关问题
数组 attr=[{time:'2022-09',id:1},{time:;2022-01',id:2}] 按照time进行正序排序
可以使用数组的 sort 方法来对数组进行排序,具体实现代码如下:
```JavaScript
const attr = [{time:'2022-09',id:1},{time:'2022-01',id:2}];
attr.sort((a, b) => {
if (a.time < b.time) {
return -1;
}
if (a.time > b.time) {
return 1;
}
return 0;
});
console.log(attr); // [{time:'2022-01',id:2},{time:'2022-09',id:1}]
```
在 sort 方法中传入一个比较函数,该函数会接收两个参数 a 和 b,分别表示当前比较的两个元素。如果 a 应该排在 b 前面,则返回一个小于 0 的值;如果 a 应该排在 b 后面,则返回一个大于 0 的值;如果 a 和 b 相同,则返回 0。因此,我们可以通过比较 time 属性的值来进行排序。
阅读全文