JSFiddle - React, Tailwind, and code Playground

by lalatino

JavaScript

var dates = [
    {
    day_year: "2012",
    day_month: "08",
    day_number: "11",
    day_name: "mon"},
{
    day_year: "2012",
    day_month: "08",
    day_number: "02",
    day_name: "mon"},
{
    day_year: "2012",
    day_month: "07",
    day_number: "28",
    day_name: "mon"},
{
    day_year: "2012",
    day_month: "08",
    day_number: "01",
    day_name: "mon"},
{
    day_year: "2012",
    day_month: "08",
    day_number: "33",
    day_name: "mon"},
{
    day_year: "2011",
    day_month: "08",
    day_number: "03",
    day_name: "mon"},
{
    day_year: "2012",
    day_month: "12",
    day_number: "24",
    day_name: "mon"}
        ];

var search = new Date(2012, 7, 3); //August 11, 2012
var i, timeStampi, timeStamp = search.getTime();
var mindiff, nearestDates = [];
alert(timeStamp);

for (i = 0; i < dates.length; i++) {
    timeStampi = new Date(dates[i].day_year, dates[i].day_month - 1, dates[i].day_number).getTime();
    diff = Math.abs(timeStampi-timeStamp);
    alert(diff);
    if (diff==mindiff) {
        nearestDates.push(i);
    } else if (diff<mindiff) {
        nearestDates = [i];
    }
}

alert(nearestDates);