前言
项目有一个需求:在使用后台传来的数据需要以对象时间进行升序或者降序进行排列
解决方案
我所传入的时间类似于:2018-07-14 17:31:21,通过replace()函数,将其转换为:2018/07/14 17:31:21 ,
再通过getTime()方法返回距1970年1月1日之间的毫秒数
通过sort()函数进行比较替换,具体代码如下:
changeDate() {
this.giftList.sort((a, b) => {
let aTimeString = a.createTime
let bTimeString = b.createTime
aTimeString = aTimeString.replace(/-/g,'/') // 将其中的'-'替换为'/'
bTimeString = bTimeString.replace(/-/g,'/')
let aTime = new Date(aTimeString).getTime() // 转为1970年的毫秒
let bTime = new Date(bTimeString).getTime()
return bTime - aTime // 降序排列
})
}
其中的giftList为res.data,可以再template中直接v-for循环