如何使用jQuery或Javascript在数组中升序或降序日期



我是Javascript和jquery的新手。我想按升序和降序排列从 items[] 数组到 item1[] 和 item2[] 数组的日期。

var items = ["01-Jun-17", "03-Jun-17", "03-May-17", "05-Jun-17", "05-Jun-17", "18-May-17"];
Output:
/*----logic for Ascending:::------ *
var item1=["03-May-17","18-May-17","01-Jun-17","03-Jun-17","05-Jun-17","05-Jun-17"];
/*----- logic for  Descending:::------ *
var item2=["05-Jun-17","05-Jun-17","03-Jun-17","01-Jun-17","18-May-17","03-May-17"];

如果您询问对数组进行排序,则可以将字符串转换为Date,然后对其应用排序功能。

var items = ["01-Jun-17", "03-Jun-17", "03-May-17", "05-Jun-17", "05-Jun-17", "18-May-17"];
items.sort((d1,d2) => new Date(d1) - new Date(d2) > 0);
console.log("Ascending: ",items);
console.log("Descending: ",items.reverse());

在这里,我添加了升序和降序。 您可以使用javascript数组的函数排序。

var items = ["01-Jun-17", "03-Jun-17", "03-May-17", "05-Jun-17", "05-Jun-17", "18-May-17"];
var items1 =jQuery.makeArray(items).sort(function(a, b) {
return new Date(a) < new Date(b);
});
var items2 = jQuery.makeArray(items).sort(function(a, b) {
return new Date(a) > new Date(b);
});
$("#div0").html(items);
$("#div1").html(items1);
$("#div2").html(items2);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<lable>Original</lable>
<div id="div0"></div>
</br>
<lable>Asc</lable>
<div id="div1"></div>
</br>
<lable>Desc</lable>
<div id="div2"></div>

最新更新