前端拿到数据,需要按照时间顺序和字母顺序来展示数据
问题描述:
时间顺序是按照从大到小(10-1逐渐排序,属于降序),字母顺序是按照A-Z排序,需要同时兼顾时间和字母,想知道思路?时间优先,其后名字大写字母
答
题主要的代码如下
<script>
var arr = [
{ time: '2021-10-24', title: 'cde' },
{ time: '2021-10-24', title: 'abc' },
{ time: '2021-10-30', title: 'abc' }];
arr.sort(function (a, b) {
var atime = new Date(a.time.replace(/-/g, '/'))
var btime = new Date(b.time.replace(/-/g, '/'));
if (btime.getTime() != atime.getTime()) return btime - atime;
return a.title.toUpperCase().localeCompare(b.title.toUpperCase());
});
console.log(JSON.stringify(arr,null,2))
</script>
有帮助麻烦点个【采纳该答案】,谢谢~~有其他问题可以继续交流~
答
直接在后台用SQL语句实现排序应该更方便哦。