首先说明下sort()的使用
var str=['George','John','Thomas','James','Adrew','Martin'];
str.sort();// 输出结果是:Adrew,George,James,John,Martin,Thomas
这里是sort()不传入参数时,是根据首字母来排序
再例如:
var arr=[9,1,8,10,15,3,100];
console.log(arr.sort())//输出结果是 1, 10, 100, 15, 3, 8, 9
这里也是根据第一个数字的大小进行排序的
利用sort()进行从小到大,和从大到小的排序
//从到到小排序
var arr=[9,1,8,10,15,3,100];
function fn(a,b){
return b-a;
}
console.log(arr.sort(fn))
//输出结果是 100, 15, 10, 9, 8, 3, 1
//从小到大排序
var arr=[9,1,8,10,15,3,100];
function fn(a,b){
return a-b;
}
console.log(arr.sort(fn))
//输出结果是 1, 3, 8, 9, 10, 15, 100
data是一个数组,每一项是对象,根据data数组里面的MatchDate,时间字段,来把这个数组排序 ,
时间格式为(MatchDate:"2018-03-21 17:00:00")
data.sort(function(a, b) {
// return Date.parse(a.MatchDate) - Date.parse(b.MatchDate) //这个方法安卓可以,ios不生效
return Date.parse(a.MatchDate.replace(/\-/g, '/')) - Date.parse(b.MatchDate.replace(/\-/g, '/')); //兼容iso下的问题
});
把一个指定的时间,转化为时间搓比较大小是,pc端可以这样来
var startDate = new Date('2018-01-01 00:00:00').getTime();
但是移动端只能这样来,为了兼容ios,不识别—,只能识别 /的问题
var startDate = new Date('2018-01-01 00:00:00'.replace(/-/g, '/')).getTime();