我生成了动态日期和时间,我需要使用JavaScript按降序对它们进行排序。
我的数据采用以下格式。
var array= ["25-Jul-2017 12:46:39 pm","25-Jul-2017 12:52:23 pm","25-Jul-2017 12:47:18 pm"];
任何人都会感激不尽。
答案 0 :(得分:1)
以下是您的工作代码:
var array = ["25-Jul-2017 12:46:39 pm", "25-Jul-2017 12:52:23 pm", "25-Jul-2017 12:47:18 pm", "25-Jul-2017 12:59:18 pm"];
array.sort((a, b) => new Date(b).getTime() - new Date(a).getTime())
console.log(array)

答案 1 :(得分:0)
var array = ["25-Jul-2017 12:46:39 pm", "25-Jul-2017 12:52:23 pm", "25-Jul-2017 12:47:18 pm"];
array.sort(function(a, b) {
return new Date(b) - new Date(a);
});
console.log(array);

答案 2 :(得分:0)
<强>样本强>
var array= ["25-Jul-2017 12:46:39 pm","25-Jul-2017 12:52:23 pm","25-Jul-2017 12:47:18 pm"];
var dateAr = [];
for(var i=0;i<array.length;i++){
dateAr.push(new Date(array[i].replace(/-/g,'/')).getTime()); //convert to milisecond
}
var sortAr = dateAr.sort(function (a, b) { return a - b; }); //sort it
var resArr = [];
for(var i=0;i<array.length;i++){
resArr.push(new Date(sortAr[i])); //make date object
}
console.log(resArr);
从Date转换为毫秒,然后对其进行排序。并从毫秒制作Date对象。使用此replace(/-/g,'/')
替换日期字符串,它适用于所有浏览器。