问题
想要让数据按照时间进行降序排序显示
代码
logingForm() {
const url1 = 'game-web/WangRedPacket/redPacketHistoryByGivingUserId/' + this.userId;
this.http.get(url1).subscribe(
res => {
this.lsilSendPacket = res.json().data.sort(this.sortTime);
// 计算发出的总积分
for (let i = 0; i < this.lsilSendPacket.length; i++) {
this.totalIntegral += this.lsilSendPacket[i].integral;
}
},
error => {
}
);
}
/*
*将数据按时间降序排序的方法
*/
sortTime(b , a) {
return new Date(a.createTime).valueOf() - new Date(b.createTime).valueOf();
}
重点就是最后的这个方法,只是在从后端获取数据的时候调用了一下 sort 方法
解释
a , b表示数组中的任意两个元素,若 return > 0 则 b 前 a 后; reutrn < 0 则 a 前 b 后;a = b 时存在浏览器兼容
也就是说,a - b 输出从小到大排序,b - a 输出从大到小排序。
如果想要升序排序就是( a , b ),如果想要降序排序就是( b , a )