Hig*_*lar 10 javascript momentjs
我想倒数直到使用momentjs的特定事件的日子,但我得到了意想不到的结果.
今天的日期是4月17日,事件日期是5月14日,我希望结果天数为27,但是我的代码给了我57的结果.出了什么问题?
function daysRemaining() {
var eventdate = moment([2015, 5, 14]);
var todaysdate = moment();
return eventdate.diff(todaysdate, 'days');
}
alert(daysRemaining());
Run Code Online (Sandbox Code Playgroud)
Bar*_*cha 21
使用数组创建时刻对象时,必须注意几个月,几小时,几分钟,几秒和几毫秒都是零索引.该月份的年份和日期均为1个索引.这是为了镜像原生Date参数.
因此,要么将月份更改为4以反映May,要么将日期解析为ISO 8601字符串
function daysRemaining() {
var eventdate = moment("2015-05-14");
var todaysdate = moment();
return eventdate.diff(todaysdate, 'days');
}
alert(daysRemaining());
Run Code Online (Sandbox Code Playgroud)
只是为遇到此问题的其他人添加 - 实际上有一个助手可以为您进行措辞等:
https://momentjs.com/docs/#/displaying/to/
/* Retrieve a string describing the time from now to the provided date */
daysUntil: function(dateToCheckAgainst){
return new moment().to(moment(dateToCheckAgainst));
}
// Sample outputs
"in three months"
"in two months"
"in 25 days"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7296 次 |
| 最近记录: |