首页 > 开发 > JS > 正文

js获取离当前时间点最近的时间

2017-09-05 05:51:32  来源:网友分享

假如后台返回的arr=[0812,0819,0829,0929];
数组的每一项代表一个日期。
今天是0831,怎么判断得出距离今天最近的一天是数组的哪一项?下标怎么获取出来?
这里指的最近的一天是指距离当天时间绝对的天数,比如说有两个数据分别是0829,0901,那离今天(0831)最近的就是0901了。
哈哈,觉得自己好啰嗦,毕竟还是想把需求说清楚。
希望各位大佬解答一下!!!
不胜感激!!!

补充一下,后台返回的数据长这个样子:

解决方案

   var timeArr = ['2017-07-10T07:00:00.00Z', '2017-08-15T07:00:00.00Z', '2017-07-12T07:00:00.00Z', '2017-07-15T07:00:00.00Z',       '2017-07-15T07:00:00.00Z', '2017-09-02T07:00:00.00Z'   ];   var timestamp = Date.now();   var min;   var index = 0;   timeArr.forEach(function(item, i) {       var itemStamp = new Date(item).getTime();       var interVal = Math.abs(timestamp - itemStamp);       if (min == void 0) { min = interVal } else {           if (min > interVal) {               min = interVal;               index = i;           }       }   })   console.log(index);