如何在Javascript中生成从当前日期到最后日期的日期?
我想在Javascript中生成日期作为我下面的PHP代码,但我不知道怎么做如何在Javascript中生成从当前日期到最后日期的日期?,javascript,Javascript,我想在Javascript中生成日期作为我下面的PHP代码,但我不知道怎么做 $begin2 = new DateTime(date("Y-m-d", strtotime("-5 day"))); $interval2 = new DateInterval('P1D'); $end2 = new DateTime(date("Y-m-d", strtotime("+1 day"))); $daterange2 = new DatePeriod($begin2, $interval2, $end2
$begin2 = new DateTime(date("Y-m-d", strtotime("-5 day")));
$interval2 = new DateInterval('P1D');
$end2 = new DateTime(date("Y-m-d", strtotime("+1 day")));
$daterange2 = new DatePeriod($begin2, $interval2, $end2);
foreach (array_reverse(iterator_to_array($daterange2)) as $val) {
echo $val->format("Ymd");
}
Output:
2015-12-04
2015-12-03
2015-12-02
2015-12-01
2015-11-30
2015-11-29
2015-11-28
2015-11-27
2015-11-26
2015-11-25
编辑
哇,完全没有抓住问题的关键
似乎您希望从今天开始的日期以ISO 8601格式向后追溯一定天数。日期构造函数将创建一个日期,并返回ISO 8601日期。它只需要修剪时间部分
因此,返回从今天开始n天内所有日期的日期字符串的函数是:
函数getDateRange(n){
var d=新日期(),
日期=[];
而(n--){
dates.push(d.toISOString().split('T')[0]);
d、 setDate(d.getDate()-1);
}
返回日期;
}
//范例
write(getDateRange(10).join(“”)代码>对于某些日期操作,本机“日期”就足够了
var myDate=新日期();
var dateLate=新日期();
var dateEarly=新日期();
dateLate.setDate(dateLate.getDate()+10);
dateEarly.setDate(dateEarly.getDate()-10);
myDate.setDate(dateLate.getDate());
而(myDate.getDate()!=dateEarly.getDate()){
myDate.setDate(myDate.getDate()-1);
document.write(myDate.toLocaleDateString()+'
);
}
以下是针对给定日期按相反顺序进行迭代的代码
var now = new Date();
var begin2 = new Date();
var end2 = new Date();
var year, month, day, datestr;
begin2.setDate(now.getDate() - 5);
end2.setDate(now.getDate() + 1);
var current = begin2;
var resulting_dates = [];
while (current <= end2) {
datestr = current.getFullYear() + '-' + ('0' + (current.getMonth() + 1)).slice(-2) + '-' + ('0' + current.getDate()).slice(-2);
resulting_dates.push(datestr);
current.setDate(current.getDate() + 1);
}
console.log(resulting_dates);
var now=newdate();
var begin2=新日期();
var end2=新日期();
变量年、月、日、日期;
begin2.setDate(现在是.getDate()-5);
end2.setDate(现在是.getDate()+1);
无功电流=begin2;
var结果_日期=[];
虽然(当前)您可以使用momentjs,但它是在Javascript中处理日期的一个很好的库,我相信它已经得到了回答。我认为您可以使用.toISOString();请参阅Rob回答中的代码。