根据时间排序

有时我们要根据后台返回数据中的时间字段,对各条数据进行排序,但返回的时间是字符串格式,无法排序,转换成 ASCII倒是可以比较大小,但又不准确,比如说2017/01/02是比2017/02/10小的,而2017/01/30却又比2017/02/10大,按这样的规则是无法做时间排序的,下面的方法可以试一下:

var str1 = "2017/01/04";
var str2 = "2017/04/11";      //这是两条时间
str1 = new Date(str1);
str2 = new Date(str2);    //格式化时间
//得出的结果是
// Wed Jan 04 2017 00:00:00 GMT+0800 (中国标准时间)
// Tue Apr 11 2017 00:00:00 GMT+0800 (中国标准时间)

然后用getTime()方法获取时间戳:

var timeStemp1 = str1.getTime();
var timeStemp2 = str2.getTime();  //得到的就是数字类型的时间戳了,而且是时间越近,数值就越大,这样就可以拿来比较了

附上一个冒泡排序:

var arr = [1,2,3,4,5];
    for(var i = 0; i < arr.length; i++){
        for(var j = 0; j < arr.length - 1; j++){
            if(arr[i]>arr[j]){
                var temp = arr[i];
                arr[i] = arr[j];
                arr[j] = temp;
            }
        }
    }
原文地址:https://www.cnblogs.com/kakayang/p/6694634.html