javascript
  • jquery
  • json
  • date
  • object
  • 2014-10-07 100 views 0 likes 
    0

    請hlp我我必須從下面的對象找到最近的日期,最近的日期會來與系統日期+ dayscounter比較。JavaScript數組找到最近的日期與當前日期+ dayscounter

    請幫助它對我很有幫助。這裏的jsfiddle鏈接: http://jsfiddle.net/g7rsp4b2/1/

    <div class="component" data-datejson='{"success":{"yrdateslist":["October 10,2014","October 18,2014","October 22,2014","October 09,2014","October 21,2014","October 22,2014"],"dayscounter":"8"}}' id="onCampusDate"> 
    
    </div> 
    
    var allDates = $('.component').data('datejson'); 
    var dates = allDates.success.yrdateslist; 
    var dayscounter = allDates.success.dayscounter; 
    var now = new Date(); 
    var newDates = []; 
    for (var i = 0; i < dates.length; i++) { 
        newDates.push(dates[i]); 
    } 
    
    alert(newDates); 
    alert(now); 
    

    回答

    0

    如何像:

    var allDates = $('.component').data('datejson'); 
    var dates = allDates.success.yrdateslist; 
    var dayscounter = allDates.success.dayscounter; 
    var now = new Date(); 
    
    //Add the days counter to now 
    now.setDate(now.getDate() + dayscounter); 
    
    //This is the key -> Sort by the difference in time 
    dates.sort(function(a,b){ 
        var nowTime = now.getTime(), 
         atime = Math.abs(atime - nowTime), 
         btime = Math.abs(btime- nowTime); 
    
        return Math.abs(atime - btime); 
    }); 
    

    那麼你的關閉日期應該是dates[0];

    參見:http://jsfiddle.net/g8ezcoz7/

    相關問題