Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 按日期和时间按升序对数组排序_Javascript_Arrays_Datetime - Fatal编程技术网

Javascript 按日期和时间按升序对数组排序

Javascript 按日期和时间按升序对数组排序,javascript,arrays,datetime,Javascript,Arrays,Datetime,我有一个数组是未排序的格式。 i、 e 我想按这种格式对数组进行排序 var _dateArray = [ { startTime : 'Sat Feb 21 2015 16:30:00 GMT+0530 (IST)' ,endTime : ' Sat Feb 21 2015 16:45:00 GMT+0530 (IST)' }, { startTime : 'Sat Feb 21 2015 16:30:00 GMT+0530 (IST)' ,endTime : ' Sat

我有一个数组是未排序的格式。 i、 e

我想按这种格式对数组进行排序

var _dateArray = [
     { startTime : 'Sat Feb 21 2015 16:30:00 GMT+0530 (IST)' ,endTime : ' Sat Feb 21 2015 16:45:00 GMT+0530 (IST)' },
     { startTime : 'Sat Feb 21 2015 16:30:00 GMT+0530 (IST)' ,endTime : ' Sat Feb 21 2015 17:15:00 GMT+0530 (IST)' },
     { startTime : 'Sat Feb 21 2015 17:00:00 GMT+0530 (IST)' ,endTime : ' Sat Feb 21 2015 19:15:00 GMT+0530 (IST)' },
     { startTime : 'Sat Feb 21 2015 19:00:00 GMT+0530 (IST)' ,endTime : ' Sat Feb 21 2015 20:00:00 GMT+0530 (IST)' },
     { startTime : 'Sat Feb 21 2015 19:00:00 GMT+0530 (IST)' ,endTime : ' Sat Feb 21 2015 20:00:00 GMT+0530 (IST)' },
     { startTime : 'Sat Feb 21 2015 20:00:00 GMT+0530 (IST)' ,endTime : ' Sat Feb 21 2015 21:00:00 GMT+0530 (IST)' },
 ];
你能告诉我如何实现这个功能吗


谢谢。

您需要将JavaScript函数
.sort()
与自定义比较器一起使用,在该比较器中,您将解析开始日期并进行比较

自定义比较器是一个函数,它接收2个项目,并根据自定义比较要求返回负值/零值/正值。
.sort()
函数使用提供的比较器,并在排序过程中使用它来比较元素:

var\u日期数组=[{
开始时间:“2015年2月21日星期六19:00:00 GMT+0530(IST)”,
结束时间:2015年2月21日星期六20:00:00 GMT+0530(IST)
}, {
开始时间:“2015年2月21日星期六19:00:00 GMT+0530(IST)”,
结束时间:2015年2月21日星期六20:00:00 GMT+0530(IST)
}, {
开始时间:“2015年2月21日星期六17:00:00 GMT+0530(IST)”,
结束时间:2015年2月21日星期六19:15:00 GMT+0530(IST)
}, {
开始时间:2015年2月21日星期六20:00:00 GMT+0530(IST),
结束时间:“2015年2月21日星期六21:00:00 GMT+0530(IST)”
}, {
开始时间:2015年2月21日星期六16:30:00 GMT+0530(IST),
结束时间:2015年2月21日星期六16:45:00 GMT+0530(IST)
}, {
开始时间:2015年2月21日星期六16:30:00 GMT+0530(IST),
结束时间:2015年2月21日星期六17:15:00 GMT+0530(IST)
}];
//这是我们的比较器函数
函数DateComparator(dateAPair、dateBPair){
var DateA=新日期(dateAPair.startTime);
var DateB=新日期(dateBPair.startTime);
如果(日期a<日期b){
返回-1;
}else if(DateA>DateB){
返回1;
}否则{
返回0;
}
}
console.log(_dateArray);
_排序(DateComparator);

console.log(_dateArray)请告诉我们您到目前为止尝试了什么。这次我需要按照首页上的排序顺序显示。香蕉u不理解我的问题我很理解你,我已经给你贴了一个答案。但下一次请你表现出一些努力,并尝试先自己解决它。
var _dateArray = [
     { startTime : 'Sat Feb 21 2015 16:30:00 GMT+0530 (IST)' ,endTime : ' Sat Feb 21 2015 16:45:00 GMT+0530 (IST)' },
     { startTime : 'Sat Feb 21 2015 16:30:00 GMT+0530 (IST)' ,endTime : ' Sat Feb 21 2015 17:15:00 GMT+0530 (IST)' },
     { startTime : 'Sat Feb 21 2015 17:00:00 GMT+0530 (IST)' ,endTime : ' Sat Feb 21 2015 19:15:00 GMT+0530 (IST)' },
     { startTime : 'Sat Feb 21 2015 19:00:00 GMT+0530 (IST)' ,endTime : ' Sat Feb 21 2015 20:00:00 GMT+0530 (IST)' },
     { startTime : 'Sat Feb 21 2015 19:00:00 GMT+0530 (IST)' ,endTime : ' Sat Feb 21 2015 20:00:00 GMT+0530 (IST)' },
     { startTime : 'Sat Feb 21 2015 20:00:00 GMT+0530 (IST)' ,endTime : ' Sat Feb 21 2015 21:00:00 GMT+0530 (IST)' },
 ];