我需要设置一个从现在起30天的日期,并考虑到28、29、30、31天的月份,因此它不会跳过任何天,而恰好显示从现在开始的30天。我该怎么办?
JavaScript“ Date()”对象让您了解了:
var future = new Date();
future.setDate(future.getDate() + 30);
这只会做正确的事。 (每个月的getter / setter都具有他们的名字,这有点令人困惑。)
我写了一个日期包装器库,该库有助于解析,处理和格式化日期。
https://github.com/timrwood/moment
这里是您如何使用Moment.js做到的
var inThirtyDays = moment().add('days', 30);
使用具有简单语法且没有外部库的本机Date对象:
var future = new Date('Jan 1, 2014');
future.setTime(future.getTime() + 30 * 24 * 60 * 60 * 1000); // Jan 31, 2014
日期setTime和getTime函数使用自1970年1月1日(link)开始的毫秒数。
var now = new Date();
var THIRTY_DAYS = 30 * 24 * 60 * 60 * 1000;
var thirtyDaysFromNow = now + THIRTY_DAYS;
尝试这段代码:
const date = new Date();
futureDate = new Date(date.setDate(date.getDate() + 30)).toLocaleDateString();