使用 Moment.JS 添加天数
Adding Days using Moment.JS
在使用 moment.js
的 Appcelerator 项目中简单地将一天添加到几个日期时遇到一些问题
我只想获取今天的日期,然后以 DD 格式 (01) 显示它,然后再获取接下来的 6 天。
这是我正在尝试的:
var todayDate = moment();
var day1 = todayDate.format("DD");
var day2 = todayDate.add(1, 'days').format("DD");
var day3 = todayDate.add(2, 'days').format("DD");
var day4 = todayDate.add(3, 'days').format("DD");
var day5 = todayDate.add(4, 'days').format("DD");
var day6 = todayDate.add(5, 'days').format("DD");
var day7 = todayDate.add(6, 'days').format("DD");
但是,我得到的输出如下:
[INFO] : 31
[INFO] : 01
[INFO] : 03
[INFO] : 06
[INFO] : 10
[INFO] : 15
[INFO] : 21
它应该是:
[INFO] : 31
[INFO] : 01
[INFO] : 02
[INFO] : 03
[INFO] : 04
[INFO] : 05
[INFO] : 06
我做错了什么?
西蒙
你指的是同一个变量
您将 N 天添加到 todayDate
,因此下一个 add
-方法将在今天日期已经增加的值上添加 N 天,不再是 'today'
您将天数添加到同一个变量:
说 todayDate
是 31。
第一行,您将 1 天添加到 todayDate
,因此它变为 01。
然后你将 2 天添加到 todayDate
(现在是“01”)所以它变成 03
等...
改为执行此操作(当然取决于您的需要):
var day1 = moment().format("DD");
var day2 = moment().add(1, 'days').format("DD");
var day3 = moment().add(2, 'days').format("DD");
var day4 = moment().add(3, 'days').format("DD");
var day5 = moment().add(4, 'days').format("DD");
var day6 = moment().add(5, 'days').format("DD");
var day7 = moment().add(6, 'days').format("DD");
或者每次只添加 1
;)
var todayDate = moment();
var day1 = todayDate.format("DD");
var day2 = todayDate.add(1, 'days').format("DD");
var day3 = todayDate.add(1, 'days').format("DD");
var day4 = todayDate.add(1, 'days').format("DD");
var day5 = todayDate.add(1, 'days').format("DD");
var day6 = todayDate.add(1, 'days').format("DD");
var day7 = todayDate.add(1, 'days').format("DD");
在使用 moment.js
的 Appcelerator 项目中简单地将一天添加到几个日期时遇到一些问题我只想获取今天的日期,然后以 DD 格式 (01) 显示它,然后再获取接下来的 6 天。
这是我正在尝试的:
var todayDate = moment();
var day1 = todayDate.format("DD");
var day2 = todayDate.add(1, 'days').format("DD");
var day3 = todayDate.add(2, 'days').format("DD");
var day4 = todayDate.add(3, 'days').format("DD");
var day5 = todayDate.add(4, 'days').format("DD");
var day6 = todayDate.add(5, 'days').format("DD");
var day7 = todayDate.add(6, 'days').format("DD");
但是,我得到的输出如下:
[INFO] : 31
[INFO] : 01
[INFO] : 03
[INFO] : 06
[INFO] : 10
[INFO] : 15
[INFO] : 21
它应该是:
[INFO] : 31
[INFO] : 01
[INFO] : 02
[INFO] : 03
[INFO] : 04
[INFO] : 05
[INFO] : 06
我做错了什么?
西蒙
你指的是同一个变量
您将 N 天添加到 todayDate
,因此下一个 add
-方法将在今天日期已经增加的值上添加 N 天,不再是 'today'
您将天数添加到同一个变量:
说 todayDate
是 31。
第一行,您将 1 天添加到 todayDate
,因此它变为 01。
然后你将 2 天添加到 todayDate
(现在是“01”)所以它变成 03
等...
改为执行此操作(当然取决于您的需要):
var day1 = moment().format("DD");
var day2 = moment().add(1, 'days').format("DD");
var day3 = moment().add(2, 'days').format("DD");
var day4 = moment().add(3, 'days').format("DD");
var day5 = moment().add(4, 'days').format("DD");
var day6 = moment().add(5, 'days').format("DD");
var day7 = moment().add(6, 'days').format("DD");
或者每次只添加 1
;)
var todayDate = moment();
var day1 = todayDate.format("DD");
var day2 = todayDate.add(1, 'days').format("DD");
var day3 = todayDate.add(1, 'days').format("DD");
var day4 = todayDate.add(1, 'days').format("DD");
var day5 = todayDate.add(1, 'days').format("DD");
var day6 = todayDate.add(1, 'days').format("DD");
var day7 = todayDate.add(1, 'days').format("DD");