配列またはリストなどで最も近い時間を取得しようとしています。私はこのコードを見つけることができ、編集を行って動作させようとしましたが、うまくいきませんでした。簡単になればjqueryを使えます。以下はjavascriptのみですが、時間に最も近い時間をどのように出力できますか= thetime
さらに調査した結果、このスニペットを見つけて、私の目的に役立つと思います。
var date1 = myDate,
date2 = new Date();
return (date1.getTime() < date2.getTime());
私がしようとしていること
var currentTime = new Date()
var hours = currentTime.getHours()
var minutes = currentTime.getMinutes()
if (minutes < 10) {
minutes = "0" + minutes
}
var thetime = hours + ":" + minutes + " "
var json = [{
"times": {
"times1": "20:01",
"times2": "21:43",
"times3": "22:56",
"times4": "23:21"
}
}]
var times = [];
var jsontimes = json[0].times;
for (var i in jsontimes) {
times.push(new Date(jsontimes[i]))
}
times.sort(function (a, b) {
return Math.abs(thetime - a / new Date()) + Math.abs(thetime - b / new Date())
});
// display code
for (var i = 0; i < jsontimes.length; i++)
document.getElementById("output").innerHTML += dates[i] + "<br>";