我一直以jan为0,dec为11的格式保存我的日期,然后用moment([yearVal, monthVal, dateVal])
创建新的时刻。但是现在我需要使用字符串来创建片刻。问题是我无法找到解析它的方法,它认为jan是0月而不是1。
var currentDateText = "2015-0-25";
var newDate = moment(currentDateText, "YYYY-M-D").add(1, 'month');
上述代码有效,除了前一个月有30天且当前有31个月的情况。有没有办法解析一串" 2015-0-25" 2015年1月25日?
答案 0 :(得分:1)
没有以这种方式解析日期的内置方法,因为它不是通常写日期的方式。
您可以将字符串拆分为组件,并从中创建日期:
var s = currentDateText.split('-');
var newDate = new Date(parseInt(s[0], 10), parseInt(s[1], 10), parseInt(s[2], 10));
答案 1 :(得分:1)
没有构建方法,我也不认为时刻也提供过。
您可以拆分字符串,然后使用Date
构造函数创建日期对象。
var currentDateText = "2015-0-25";
var arr = currentDateText.split('-');
var date = new Date(arr[0], arr[1], arr[2])
var newDate = moment(date).add(1, 'month');