获取javascript中循环的24小时日期和时间

获取javascript中循环的24小时日期和时间,javascript,Javascript,当我在下拉列表中选择“最后24小时”时,我有一个下拉列表(值为“最后24小时”、“最后48小时”等) 我需要从现在到昨天的所有日期,间隔一小时 我试过这个 var todayDate = new Date(); if(type=="hours"){ // for hours based drop-down var oneDayAgo = new Date(todayDate.getTime()); oneDayAgo.setDate(todayDat

当我在下拉列表中选择“最后24小时”时,我有一个下拉列表(值为“最后24小时”、“最后48小时”等) 我需要从现在到昨天的所有日期,间隔一小时

我试过这个

   var todayDate = new Date();
    if(type=="hours"){ // for hours based drop-down
        var oneDayAgo = new Date(todayDate.getTime());
        oneDayAgo.setDate(todayDate.getDate() - 1);
        console.log("oneDayAgo"+oneDayAgo);
        var hours = todayDate.getHours();
        for(var i = hours; i <= hours+24; i++) {
            if(i<25){
                var newHours=i;
                var newDates=todayDate.getFullYear() + "-" + ("00" + (todayDate.getMonth() + 1)).slice(-2) + "-" + ("00" + todayDate.getDate()).slice(-2) + " " + ("00" +newHours).slice(-2) + ":" + ("00" + todayDate.getMinutes()).slice(-2) + ":" + ("00" + todayDate.getSeconds()).slice(-2);
                console.log(newDates);
            }else{
                var newHours=i-24;
                var newDates=oneDayAgo.getFullYear() + "-" + ("00" + (oneDayAgo.getMonth() + 1)).slice(-2) + "-" + ("00" + oneDayAgo.getDate()).slice(-2) + " " + ("00" +newHours).slice(-2) + ":" + ("00" + oneDayAgo.getMinutes()).slice(-2) + ":" + ("00" + oneDayAgo.getSeconds()).slice(-2);
                console.log(newDates);
            }
        }
    }
var todayDate=新日期();
if(type==“hours”){//for hours-based下拉列表
var oneDayAgo=新日期(todayDate.getTime());
setDate(todayDate.getDate()-1);
console.log(“oneDayAgo”+oneDayAgo);
var hours=todayDate.getHours();
对于(var i=hours;i这里a,这可能是您想要的

//get type and hoursOption from dropdowns
var type = 'hours'
var hoursOption = 48;

var todayDate = new Date();

if(type=="hours"){ // for hours based drop-down

    var hours = todayDate.getHours();
    for(var i = hours; i <= hours + hoursOption; i++) {
            todayDate.setHours(todayDate.getHours() - 1)
        var newDates = todayDate.getFullYear() + "-" + ("00" + (todayDate.getMonth() + 1)).slice(-2) + "-" + ("00" + todayDate.getDate()).slice(-2) + " " + ("00" + todayDate.getHours()).slice(-2) + ":" + ("00" + todayDate.getMinutes()).slice(-2) + ":" + ("00" + todayDate.getSeconds()).slice(-2);
            console.log(newDates);

    }
}
//从下拉列表中获取类型和小时选项
变量类型='hours'
var hoursOption=48;
var todayDate=新日期();
if(type==“hours”){//for hours-based下拉列表
var hours=todayDate.getHours();
对于(var i=hours;i这里a,这可能是您想要的

//get type and hoursOption from dropdowns
var type = 'hours'
var hoursOption = 48;

var todayDate = new Date();

if(type=="hours"){ // for hours based drop-down

    var hours = todayDate.getHours();
    for(var i = hours; i <= hours + hoursOption; i++) {
            todayDate.setHours(todayDate.getHours() - 1)
        var newDates = todayDate.getFullYear() + "-" + ("00" + (todayDate.getMonth() + 1)).slice(-2) + "-" + ("00" + todayDate.getDate()).slice(-2) + " " + ("00" + todayDate.getHours()).slice(-2) + ":" + ("00" + todayDate.getMinutes()).slice(-2) + ":" + ("00" + todayDate.getSeconds()).slice(-2);
            console.log(newDates);

    }
}
//从下拉列表中获取类型和小时选项
变量类型='hours'
var hoursOption=48;
var todayDate=新日期();
if(type==“hours”){//for hours-based下拉列表
var hours=todayDate.getHours();
对于(var i=小时;i
函数getDateItems(小时){
var toDate=新日期();
var fromDate=新日期();
fromDate.setTime(fromDate.getTime()-(小时*60*60*1000));
var结果=[];
while(toDate>=fromDate){
结果.推送(toDate.getFullYear()+“-”+(“00”+(toDate.getMonth()+1)).slice(-2)+“-”+(“00”+toDate.getDate()).slice(-2)+”:“+(“00”+toDate.getMinutes()).slice(-2)+:“+(“00”+toDate.getSeconds()).slice(-2));
//考虑使用Simult.js库来设置日期
setTime(toDate.getTime()-(1*60*60*1000));
}
返回结果;
}
var DatesFrom24小时=getDateItems(24);
var DatesFrom48小时=getDateItems(48);
console.log(日期为24小时);
函数getDateItems(小时){
var toDate=新日期();
var fromDate=新日期();
fromDate.setTime(fromDate.getTime()-(小时*60*60*1000));
var结果=[];
while(toDate>=fromDate){
结果.推送(toDate.getFullYear()+“-”+(“00”+(toDate.getMonth()+1)).slice(-2)+“-”+(“00”+toDate.getDate()).slice(-2)+”:“+(“00”+toDate.getMinutes()).slice(-2)+:“+(“00”+toDate.getSeconds()).slice(-2));
//考虑使用Simult.js库来设置日期
setTime(toDate.getTime()-(1*60*60*1000));
}
返回结果;
}
var DatesFrom24小时=getDateItems(24);
var DatesFrom48小时=getDateItems(48);

console.log(datesfrom24小时);
避免在循环中创建变量。在之前创建变量并在内部使用。避免在循环中创建变量。在之前创建变量并在内部使用。